Loading system/gd/cert/py_hal.py +5 −2 Original line number Diff line number Diff line Loading @@ -21,6 +21,8 @@ from cert.closable import safeClose from hal import facade_pb2 as hal_facade from bluetooth_packets_python3.hci_packets import WriteScanEnableBuilder from bluetooth_packets_python3.hci_packets import ScanEnable from bluetooth_packets_python3.hci_packets import AclPacketBuilder from bluetooth_packets_python3 import RawBuilder class PyHal(Closable): Loading @@ -46,8 +48,9 @@ class PyHal(Closable): def send_hci_command(self, command): self.device.hal.SendCommand(hal_facade.Command(payload=bytes(command.Serialize()))) def send_acl(self, acl): self.device.hal.SendAcl(hal_facade.AclPacket(payload=bytes(acl))) def send_acl(self, handle, pb_flag, b_flag, data): acl = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(data)) self.device.hal.SendAcl(hal_facade.AclPacket(payload=bytes(acl.Serialize()))) def enable_inquiry_and_page_scan(self): self.send_hci_command(WriteScanEnableBuilder(ScanEnable.INQUIRY_AND_PAGE_SCAN)) system/gd/hal/cert/simple_hal_test.py +4 −12 Original line number Diff line number Diff line Loading @@ -50,14 +50,6 @@ class SimpleHalTest(GdBaseTestClass): self.cert_hal.close() super().teardown_test() def send_cert_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.cert_hal.send_acl(acl_msg.Serialize()) def send_dut_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.dut_hal.send_acl(acl_msg.Serialize()) def test_fetch_hci_event(self): self.dut_hal.send_hci_command( hci_packets.LeAddDeviceToConnectListBuilder(hci_packets.ConnectListAddressType.RANDOM, '0C:05:04:03:02:01')) Loading Loading @@ -232,9 +224,9 @@ class SimpleHalTest(GdBaseTestClass): dut_handle = conn_handle # Send ACL Data self.send_dut_acl_data(dut_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.dut_hal.send_acl(dut_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, hci_packets.BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_cert_acl_data(cert_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, hci_packets.BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading system/gd/hci/cert/direct_hci_test.py +3 −7 Original line number Diff line number Diff line Loading @@ -99,10 +99,6 @@ class DirectHciTest(GdBaseTestClass): handle=int(handle), packet_boundary_flag=int(pb_flag), broadcast_flag=int(b_flag), data=acl) self.dut.hci.SendAcl(acl_msg) def send_hal_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.cert_hal.send_acl(acl_msg.Serialize()) def test_local_hci_cmd_and_event(self): # Loopback mode responds with ACL and SCO connection complete self.dut_hci.register_for_events(EventCode.LOOPBACK_COMMAND) Loading Loading @@ -271,7 +267,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits( Loading Loading @@ -374,7 +370,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading Loading @@ -414,7 +410,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'This is just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'This is just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading Loading
system/gd/cert/py_hal.py +5 −2 Original line number Diff line number Diff line Loading @@ -21,6 +21,8 @@ from cert.closable import safeClose from hal import facade_pb2 as hal_facade from bluetooth_packets_python3.hci_packets import WriteScanEnableBuilder from bluetooth_packets_python3.hci_packets import ScanEnable from bluetooth_packets_python3.hci_packets import AclPacketBuilder from bluetooth_packets_python3 import RawBuilder class PyHal(Closable): Loading @@ -46,8 +48,9 @@ class PyHal(Closable): def send_hci_command(self, command): self.device.hal.SendCommand(hal_facade.Command(payload=bytes(command.Serialize()))) def send_acl(self, acl): self.device.hal.SendAcl(hal_facade.AclPacket(payload=bytes(acl))) def send_acl(self, handle, pb_flag, b_flag, data): acl = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(data)) self.device.hal.SendAcl(hal_facade.AclPacket(payload=bytes(acl.Serialize()))) def enable_inquiry_and_page_scan(self): self.send_hci_command(WriteScanEnableBuilder(ScanEnable.INQUIRY_AND_PAGE_SCAN))
system/gd/hal/cert/simple_hal_test.py +4 −12 Original line number Diff line number Diff line Loading @@ -50,14 +50,6 @@ class SimpleHalTest(GdBaseTestClass): self.cert_hal.close() super().teardown_test() def send_cert_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.cert_hal.send_acl(acl_msg.Serialize()) def send_dut_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.dut_hal.send_acl(acl_msg.Serialize()) def test_fetch_hci_event(self): self.dut_hal.send_hci_command( hci_packets.LeAddDeviceToConnectListBuilder(hci_packets.ConnectListAddressType.RANDOM, '0C:05:04:03:02:01')) Loading Loading @@ -232,9 +224,9 @@ class SimpleHalTest(GdBaseTestClass): dut_handle = conn_handle # Send ACL Data self.send_dut_acl_data(dut_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.dut_hal.send_acl(dut_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, hci_packets.BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_cert_acl_data(cert_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, hci_packets.PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, hci_packets.BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading
system/gd/hci/cert/direct_hci_test.py +3 −7 Original line number Diff line number Diff line Loading @@ -99,10 +99,6 @@ class DirectHciTest(GdBaseTestClass): handle=int(handle), packet_boundary_flag=int(pb_flag), broadcast_flag=int(b_flag), data=acl) self.dut.hci.SendAcl(acl_msg) def send_hal_acl_data(self, handle, pb_flag, b_flag, acl): acl_msg = AclPacketBuilder(handle, pb_flag, b_flag, RawBuilder(acl)) self.cert_hal.send_acl(acl_msg.Serialize()) def test_local_hci_cmd_and_event(self): # Loopback mode responds with ACL and SCO connection complete self.dut_hci.register_for_events(EventCode.LOOPBACK_COMMAND) Loading Loading @@ -271,7 +267,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits( Loading Loading @@ -374,7 +370,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'Just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading Loading @@ -414,7 +410,7 @@ class DirectHciTest(GdBaseTestClass): # Send ACL Data self.enqueue_acl_data(dut_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'This is just SomeAclData')) self.send_hal_acl_data(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, self.cert_hal.send_acl(cert_handle, PacketBoundaryFlag.FIRST_NON_AUTOMATICALLY_FLUSHABLE, BroadcastFlag.POINT_TO_POINT, bytes(b'This is just SomeMoreAclData')) assertThat(self.cert_hal.get_acl_stream()).emits(lambda packet: b'SomeAclData' in packet.payload) Loading