make test: improve handling of packet captures
[vpp.git] / test / test_l2bd_multi_instance.py
index 1272d76..a122622 100644 (file)
@@ -138,7 +138,6 @@ class TestL2bdMultiInst(VppTestCase):
         Clear trace and packet infos before running each test.
         """
         super(TestL2bdMultiInst, self).setUp()
-        self.packet_infos = {}
 
     def tearDown(self):
         """
@@ -243,8 +242,7 @@ class TestL2bdMultiInst(VppTestCase):
             for i in range(0, n_int):
                 dst_host = dst_hosts[i]
                 src_host = random.choice(src_hosts)
-                pkt_info = self.create_packet_info(
-                    src_if.sw_if_index, dst_if.sw_if_index)
+                pkt_info = self.create_packet_info(src_if, dst_if)
                 payload = self.info_to_payload(pkt_info)
                 p = (Ether(dst=dst_host.mac, src=src_host.mac) /
                      IP(src=src_host.ip4, dst=dst_host.ip4) /
@@ -393,17 +391,8 @@ class TestL2bdMultiInst(VppTestCase):
         for pg_if in self.pg_interfaces:
             capture = pg_if.get_capture()
             if pg_if in self.pg_in_bd:
-                if len(capture) == 0:
-                    raise RuntimeError("Interface %s is in BD but the capture "
-                                       "is empty!" % pg_if.name)
                 self.verify_capture(pg_if, capture)
-            elif pg_if in self.pg_not_in_bd:
-                try:
-                    self.assertEqual(len(capture), 0)
-                except AssertionError:
-                    raise RuntimeError("Interface %s is not in BD but "
-                                       "the capture is not empty!" % pg_if.name)
-            else:
+            elif pg_if not in self.pg_not_in_bd:
                 self.logger.error("Unknown interface: %s" % pg_if.name)
 
     def test_l2bd_inst_01(self):