super(TestClassifier, cls).setUpClass()
cls.acl_active_table = ''
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifier, cls).tearDownClass()
+
def setUp(self):
"""
Perform test setup before test case.
def tearDown(self):
"""Run standard test teardown and acl related log."""
if not self.vpp_dead:
- self.logger.info(self.vapi.ppcli("show inacl type ip4"))
- self.logger.info(self.vapi.ppcli("show outacl type ip4"))
- self.logger.info(self.vapi.cli("show classify table verbose"))
- self.logger.info(self.vapi.cli("show ip fib"))
if self.acl_active_table == 'ip_out':
self.output_acl_set_interface(
self.pg0, self.acl_tbl_idx.get(self.acl_active_table), 0)
super(TestClassifier, self).tearDown()
+ def show_commands_at_teardown(self):
+ self.logger.info(self.vapi.ppcli("show inacl type ip4"))
+ self.logger.info(self.vapi.ppcli("show outacl type ip4"))
+ self.logger.info(self.vapi.cli("show classify table verbose"))
+ self.logger.info(self.vapi.cli("show ip fib"))
+
def config_pbr_fib_entry(self, intf, is_add=1):
"""Configure fib entry to route traffic toward PBR VRF table
"""
addr_len = 24
- self.vapi.ip_add_del_route(intf.local_ip4n,
- addr_len,
- intf.remote_ip4n,
- table_id=self.pbr_vrfid,
- is_add=is_add)
+ self.vapi.ip_add_del_route(dst_address=intf.local_ip4n,
+ dst_address_length=addr_len,
+ next_hop_address=intf.remote_ip4n,
+ table_id=self.pbr_vrfid, is_add=is_add)
def create_stream(self, src_if, dst_if, packet_sizes,
proto_l=UDP(sport=1234, dport=5678)):
try:
ip_received = packet[IP]
proto_received = packet[proto_l]
- payload_info = self.payload_to_info(str(packet[Raw]))
+ payload_info = self.payload_to_info(packet[Raw])
packet_index = payload_info.index
self.assertEqual(payload_info.dst, dst_sw_if_index)
self.logger.debug(
class TestClassifierIP(TestClassifier):
""" Classifier IP Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierIP, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierIP, cls).tearDownClass()
+
def test_iacl_src_ip(self):
""" Source IP iACL test
class TestClassifierUDP(TestClassifier):
""" Classifier UDP proto Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierUDP, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierUDP, cls).tearDownClass()
+
def test_iacl_proto_udp(self):
""" UDP protocol iACL test
class TestClassifierTCP(TestClassifier):
""" Classifier TCP proto Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierTCP, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierTCP, cls).tearDownClass()
+
def test_iacl_proto_tcp(self):
""" TCP protocol iACL test
class TestClassifierIPOut(TestClassifier):
""" Classifier output IP Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierIPOut, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierIPOut, cls).tearDownClass()
+
def test_acl_ip_out(self):
""" Output IP ACL test
class TestClassifierMAC(TestClassifier):
""" Classifier MAC Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierMAC, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierMAC, cls).tearDownClass()
+
def test_acl_mac(self):
""" MAC ACL test
class TestClassifierPBR(TestClassifier):
""" Classifier PBR Test Case """
+ @classmethod
+ def setUpClass(cls):
+ super(TestClassifierPBR, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestClassifierPBR, cls).tearDownClass()
+
def test_acl_pbr(self):
""" IP PBR test