Loading system/gd/l2cap/classic/cert/simple_l2cap_test.py +24 −0 Original line number Diff line number Diff line Loading @@ -135,3 +135,27 @@ class SimpleL2capTest(GdBaseTestClass): self.device_under_test.l2cap.OpenChannel(l2cap_facade_pb2.OpenChannelRequest(remote=self.cert_address, psm=0x01)) time.sleep(1) def test_respond_to_echo_request(self): """ L2CAP/COS/ECH/BV-01-C [Respond to Echo Request] Verify that the IUT responds to an echo request. """ self.device_under_test.l2cap.RegisterChannel(l2cap_facade_pb2.RegisterChannelRequest(channel=2)) cert_connection_stream = self.cert_device.l2cap.connection_complete_stream cert_connection_stream.subscribe() self.device_under_test.l2cap.Connect(self.cert_address) cert_connection_stream.assert_event_occurs( lambda device: device.remote == self.dut_address ) cert_connection_stream.unsubscribe() cert_packet_stream = self.cert_device.l2cap.packet_stream cert_packet_stream.subscribe() echo_request_packet = b"\x08\x01\x00\x00" echo_response_packet = b"\x09\x01\x00\x00" self.cert_device.l2cap.SendL2capPacket(l2cap_facade_pb2.L2capPacket(channel=1, payload=echo_request_packet)) cert_packet_stream.assert_event_occurs( lambda packet: echo_response_packet in packet.payload ) cert_packet_stream.unsubscribe() system/gd/l2cap/classic/internal/signalling_manager.cc +1 −1 Original line number Diff line number Diff line Loading @@ -223,7 +223,7 @@ void ClassicSignallingManager::OnEchoRequest(SignalId signal_id, const PacketVie std::vector<uint8_t> packet_vector{packet.begin(), packet.end()}; auto raw_builder = std::make_unique<packet::RawBuilder>(); raw_builder->AddOctets(packet_vector); auto builder = EchoRequestBuilder::Create(signal_id.Value(), std::move(raw_builder)); auto builder = EchoResponseBuilder::Create(signal_id.Value(), std::move(raw_builder)); enqueue_buffer_->Enqueue(std::move(builder), handler_); } Loading Loading
system/gd/l2cap/classic/cert/simple_l2cap_test.py +24 −0 Original line number Diff line number Diff line Loading @@ -135,3 +135,27 @@ class SimpleL2capTest(GdBaseTestClass): self.device_under_test.l2cap.OpenChannel(l2cap_facade_pb2.OpenChannelRequest(remote=self.cert_address, psm=0x01)) time.sleep(1) def test_respond_to_echo_request(self): """ L2CAP/COS/ECH/BV-01-C [Respond to Echo Request] Verify that the IUT responds to an echo request. """ self.device_under_test.l2cap.RegisterChannel(l2cap_facade_pb2.RegisterChannelRequest(channel=2)) cert_connection_stream = self.cert_device.l2cap.connection_complete_stream cert_connection_stream.subscribe() self.device_under_test.l2cap.Connect(self.cert_address) cert_connection_stream.assert_event_occurs( lambda device: device.remote == self.dut_address ) cert_connection_stream.unsubscribe() cert_packet_stream = self.cert_device.l2cap.packet_stream cert_packet_stream.subscribe() echo_request_packet = b"\x08\x01\x00\x00" echo_response_packet = b"\x09\x01\x00\x00" self.cert_device.l2cap.SendL2capPacket(l2cap_facade_pb2.L2capPacket(channel=1, payload=echo_request_packet)) cert_packet_stream.assert_event_occurs( lambda packet: echo_response_packet in packet.payload ) cert_packet_stream.unsubscribe()
system/gd/l2cap/classic/internal/signalling_manager.cc +1 −1 Original line number Diff line number Diff line Loading @@ -223,7 +223,7 @@ void ClassicSignallingManager::OnEchoRequest(SignalId signal_id, const PacketVie std::vector<uint8_t> packet_vector{packet.begin(), packet.end()}; auto raw_builder = std::make_unique<packet::RawBuilder>(); raw_builder->AddOctets(packet_vector); auto builder = EchoRequestBuilder::Create(signal_id.Value(), std::move(raw_builder)); auto builder = EchoResponseBuilder::Create(signal_id.Value(), std::move(raw_builder)); enqueue_buffer_->Enqueue(std::move(builder), handler_); } Loading