OSDN Git Service

Move common setup to setup_test & teardown_test
authorZach Johnson <zachoverflow@google.com>
Sat, 29 Feb 2020 06:49:30 +0000 (22:49 -0800)
committerZach Johnson <zachoverflow@google.com>
Sat, 29 Feb 2020 06:50:55 +0000 (22:50 -0800)
No need to repeat ourselves each time, and this saves
in indentation in the tests.

Test: cert/run --host
Change-Id: I909af4e8898344895b1234d27bbabc958d41f482

gd/hci/cert/acl_manager_test.py

index bff5962..cc390fc 100644 (file)
@@ -40,71 +40,69 @@ class AclManagerTest(GdFacadeOnlyBaseTestClass):
     def setup_class(self):
         super().setup_class(dut_module='HCI_INTERFACES', cert_module='HCI')
 
-    def test_dut_connects(self):
-        with PyHci(self.cert) as cert_hci, \
-            PyAclManager(self.dut) as dut_acl_manager:
-
-            cert_hci.enable_inquiry_and_page_scan()
-            cert_address = cert_hci.read_own_address()
-
-            with dut_acl_manager.initiate_connection(cert_address) as dut_acl:
-                cert_acl = cert_hci.accept_connection()
-                cert_acl.send_first(
-                    b'\x26\x00\x07\x00This is just SomeAclData from the Cert')
+    # todo: move into GdFacadeOnlyBaseTestClass, based on modules inited
+    def setup_test(self):
+        super().setup_test()
+        self.cert_hci = PyHci(self.cert)
+        self.dut_acl_manager = PyAclManager(self.dut)
 
-                dut_acl.wait_for_connection_complete()
+    def teardown_test(self):
+        self.cert_hci.clean_up()
+        self.dut_acl_manager.clean_up()
+        super().teardown_test()
 
-                dut_acl.send(
-                    b'\x29\x00\x07\x00This is just SomeMoreAclData from the DUT'
-                )
-
-                assertThat(cert_acl).emits(
-                    lambda packet: b'SomeMoreAclData' in packet.data)
-                assertThat(dut_acl).emits(
-                    lambda packet: b'SomeAclData' in packet.payload)
-
-    def test_cert_connects(self):
-        with PyHci(self.cert) as cert_hci, \
-            PyAclManager(self.dut) as dut_acl_manager:
-
-            # DUT Enables scans and gets its address
-            dut_address = self.dut.hci_controller.GetMacAddressSimple()
-
-            self.dut.neighbor.EnablePageScan(
-                neighbor_facade.EnableMsg(enabled=True))
+    def test_dut_connects(self):
+        self.cert_hci.enable_inquiry_and_page_scan()
+        cert_address = self.cert_hci.read_own_address()
 
-            dut_acl_manager.listen_for_incoming_connections()
+        with self.dut_acl_manager.initiate_connection(cert_address) as dut_acl:
+            cert_acl = self.cert_hci.accept_connection()
+            cert_acl.send_first(
+                b'\x26\x00\x07\x00This is just SomeAclData from the Cert')
 
-            cert_hci.initiate_connection(dut_address)
-            dut_acl = dut_acl_manager.accept_connection()
+            dut_acl.wait_for_connection_complete()
 
             dut_acl.send(
                 b'\x29\x00\x07\x00This is just SomeMoreAclData from the DUT')
 
-            cert_acl = cert_hci.complete_connection()
-            cert_acl.send_first(
-                b'\x26\x00\x07\x00This is just SomeAclData from the Cert')
-
             assertThat(cert_acl).emits(
                 lambda packet: b'SomeMoreAclData' in packet.data)
             assertThat(dut_acl).emits(
                 lambda packet: b'SomeAclData' in packet.payload)
 
-    def test_recombination_l2cap_packet(self):
-        with PyHci(self.cert) as cert_hci, \
-            PyAclManager(self.dut) as dut_acl_manager:
+    def test_cert_connects(self):
+        dut_address = self.dut.hci_controller.GetMacAddressSimple()
+        self.dut.neighbor.EnablePageScan(
+            neighbor_facade.EnableMsg(enabled=True))
+
+        self.dut_acl_manager.listen_for_incoming_connections()
+        self.cert_hci.initiate_connection(dut_address)
 
-            cert_hci.enable_inquiry_and_page_scan()
-            cert_address = cert_hci.read_own_address()
+        dut_acl = self.dut_acl_manager.accept_connection()
+        dut_acl.send(
+            b'\x29\x00\x07\x00This is just SomeMoreAclData from the DUT')
 
-            with dut_acl_manager.initiate_connection(cert_address) as dut_acl:
-                cert_acl = cert_hci.accept_connection()
-                cert_acl.send_first(b'\x06\x00\x07\x00Hello')
-                cert_acl.send_continuing(b'!')
-                cert_acl.send_first(b'\xe8\x03\x07\x00' + b'Hello' * 200)
+        cert_acl = self.cert_hci.complete_connection()
+        cert_acl.send_first(
+            b'\x26\x00\x07\x00This is just SomeAclData from the Cert')
 
-                dut_acl.wait_for_connection_complete()
+        assertThat(cert_acl).emits(
+            lambda packet: b'SomeMoreAclData' in packet.data)
+        assertThat(dut_acl).emits(
+            lambda packet: b'SomeAclData' in packet.payload)
 
-                assertThat(dut_acl).emits(
-                    lambda packet: b'Hello!' in packet.payload,
-                    lambda packet: b'Hello' * 200 in packet.payload).inOrder()
+    def test_recombination_l2cap_packet(self):
+        self.cert_hci.enable_inquiry_and_page_scan()
+        cert_address = self.cert_hci.read_own_address()
+
+        with self.dut_acl_manager.initiate_connection(cert_address) as dut_acl:
+            cert_acl = self.cert_hci.accept_connection()
+            cert_acl.send_first(b'\x06\x00\x07\x00Hello')
+            cert_acl.send_continuing(b'!')
+            cert_acl.send_first(b'\xe8\x03\x07\x00' + b'Hello' * 200)
+
+            dut_acl.wait_for_connection_complete()
+
+            assertThat(dut_acl).emits(
+                lambda packet: b'Hello!' in packet.payload,
+                lambda packet: b'Hello' * 200 in packet.payload).inOrder()