Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccb9bfb0 authored by Hansong Zhang's avatar Hansong Zhang
Browse files

LeL2capTest: Basic test cases where DUT is master

Test: cert/run --host
Change-Id: I8c9553462749abe222c70697cfccd5ace26585fa
parent 641a33df
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -123,6 +123,7 @@ class LeL2capTest(GdBaseTestClass):
        cert_channel = self.cert_l2cap.verify_and_respond_open_channel_from_remote(
            psm)
        dut_channel = response_future.get_channel()
        return (dut_channel, cert_channel)

    def _open_channel_from_cert(self,
                                signal_id=1,
@@ -226,6 +227,15 @@ class LeL2capTest(GdBaseTestClass):
        assertThat(cert_channel).emits(
            L2capMatchers.FirstLeIFrame(b'hello' * 40, sdu_size=200))

    def test_no_segmentation_dut_is_master(self):
        """
        L2CAP/COS/CFC/BV-02-C
        """
        (dut_channel, cert_channel) = self._set_link_from_dut_and_open_channel()
        dut_channel.send(b'hello' * 40)
        assertThat(cert_channel).emits(
            L2capMatchers.FirstLeIFrame(b'hello' * 40, sdu_size=200))

    def test_reassembling(self):
        """
        L2CAP/COS/CFC/BV-03-C
@@ -249,6 +259,12 @@ class LeL2capTest(GdBaseTestClass):
        assertThat(dut_channel).emits(
            L2capMatchers.PacketPayloadRawData(b'\x01\x01\x02\x00\x00\x00'))

    def test_data_receiving_dut_is_master(self):
        (dut_channel, cert_channel) = self._set_link_from_dut_and_open_channel()
        cert_channel.send_first_le_i_frame(6, SAMPLE_PACKET)
        assertThat(dut_channel).emits(
            L2capMatchers.PacketPayloadRawData(b'\x01\x01\x02\x00\x00\x00'))

    def test_multiple_channels_with_interleaved_data_streams(self):
        """
        L2CAP/COS/CFC/BV-05-C