X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Ftest_srv6_ad.py;h=a788f1e4974699da9289c21f098988487d907e46;hb=7f9b7f9f492d1748d8ba025b3a713058fdb1943d;hp=728ecd8a7965331b2f86f1093c7c0796972589fc;hpb=eaea421e1fefedc47325f970475c5d48c899433c;p=vpp.git diff --git a/test/test_srv6_ad.py b/test/test_srv6_ad.py index 728ecd8a796..a788f1e4974 100644 --- a/test/test_srv6_ad.py +++ b/test/test_srv6_ad.py @@ -10,6 +10,7 @@ from vpp_ip_route import VppIpRoute, VppRoutePath, VppIpTable from vpp_srv6 import SRv6LocalSIDBehaviors, VppSRv6LocalSID, VppSRv6Policy, \ SRv6PolicyType, VppSRv6Steering, SRv6PolicySteeringTypes +import scapy.compat from scapy.packet import Raw from scapy.layers.l2 import Ether, Dot1Q from scapy.layers.inet6 import IPv6, UDP, IPv6ExtHdrSegmentRouting @@ -27,6 +28,10 @@ class TestSRv6(VppTestCase): def setUpClass(self): super(TestSRv6, self).setUpClass() + @classmethod + def tearDownClass(cls): + super(TestSRv6, cls).tearDownClass() + def setUp(self): """ Perform test setup before each test case. """ @@ -363,7 +368,7 @@ class TestSRv6(VppTestCase): tx_ip2.chksum = None # read back the pkt (with str()) to force computing these fields # probably other ways to accomplish this are possible - tx_ip2 = IP(str(tx_ip2)) + tx_ip2 = IP(scapy.compat.raw(tx_ip2)) self.assertEqual(rx_ip, tx_ip2) @@ -405,7 +410,7 @@ class TestSRv6(VppTestCase): tx_ip.chksum = None # -> read back the pkt (with str()) to force computing these fields # probably other ways to accomplish this are possible - self.assertEqual(rx_srh.payload, IP(str(tx_ip))) + self.assertEqual(rx_srh.payload, IP(scapy.compat.raw(tx_ip))) self.logger.debug("packet verification: SUCCESS") @@ -495,7 +500,7 @@ class TestSRv6(VppTestCase): tx_ip = tx_pkt.getlayer(IPv6) # we can't just get the 2nd Ether layer # get the Raw content and dissect it as Ether - tx_eth1 = Ether(str(tx_pkt[Raw])) + tx_eth1 = Ether(scapy.compat.raw(tx_pkt[Raw])) # verify if rx'ed packet has no SRH self.assertFalse(rx_pkt.haslayer(IPv6ExtHdrSegmentRouting)) @@ -535,7 +540,7 @@ class TestSRv6(VppTestCase): # the whole rx'ed pkt beyond SRH should be equal to tx'ed pkt tx_ether = tx_pkt.getlayer(Ether) - self.assertEqual(Ether(str(rx_srh.payload)), tx_ether) + self.assertEqual(Ether(scapy.compat.raw(rx_srh.payload)), tx_ether) self.logger.debug("packet verification: SUCCESS") @@ -573,7 +578,7 @@ class TestSRv6(VppTestCase): # read back the dumped packet (with str()) # to force computing these fields # probably other ways are possible - p = Ether(str(p)) + p = Ether(scapy.compat.raw(p)) payload_info.data = p.copy() self.logger.debug(ppp("Created packet:", p)) pkts.append(p) @@ -736,7 +741,7 @@ class TestSRv6(VppTestCase): # take packet[Raw], convert it to an Ether layer # and then extract Raw from it payload_info = self.payload_to_info( - Ether(str(packet[Raw]))[Raw]) + Ether(scapy.compat.raw(packet[Raw]))[Raw]) return payload_info @@ -750,7 +755,7 @@ class TestSRv6(VppTestCase): :param compare_func: function to compare in and out packet """ self.logger.info("Verifying capture on interface %s using function %s" - % (dst_if.name, compare_func.func_name)) + % (dst_if.name, compare_func.__name__)) last_info = dict() for i in self.pg_interfaces: