X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Ftest_neighbor.py;h=69b00ea6ff2783d42d070584ef09565afcd43bea;hb=097fa66b9;hp=c3005ccaf571b8d500e3d4eadb1bf444b04e034c;hpb=8feeaff56fa9a4fbdfc06131f28a1060ffd9645d;p=vpp.git diff --git a/test/test_neighbor.py b/test/test_neighbor.py index c3005ccaf57..69b00ea6ff2 100644 --- a/test/test_neighbor.py +++ b/test/test_neighbor.py @@ -6,7 +6,7 @@ from socket import AF_INET, AF_INET6, inet_pton from framework import VppTestCase, VppTestRunner from vpp_neighbor import VppNeighbor, find_nbr from vpp_ip_route import VppIpRoute, VppRoutePath, find_route, \ - VppIpTable, DpoProto + VppIpTable, DpoProto, FibPathType from vpp_papi import VppEnum import scapy.compat @@ -17,6 +17,9 @@ from scapy.layers.inet6 import IPv6 from scapy.contrib.mpls import MPLS from scapy.layers.inet6 import IPv6 + +NUM_PKTS = 67 + # not exported by scapy, so redefined here arp_opts = {"who-has": 1, "is-at": 2} @@ -24,6 +27,14 @@ arp_opts = {"who-has": 1, "is-at": 2} class ARPTestCase(VppTestCase): """ ARP Test Case """ + @classmethod + def setUpClass(cls): + super(ARPTestCase, cls).setUpClass() + + @classmethod + def tearDownClass(cls): + super(ARPTestCase, cls).tearDownClass() + def setUp(self): super(ARPTestCase, self).setUp() @@ -1351,8 +1362,7 @@ class ARPTestCase(VppTestCase): ip_10_1 = VppIpRoute(self, "10::1", 128, [VppRoutePath(self.pg0.remote_hosts[1].ip6, self.pg0.sw_if_index, - proto=DpoProto.DPO_PROTO_IP6)], - is_ip6=1) + proto=DpoProto.DPO_PROTO_IP6)]) ip_10_1.add_vpp_config() p1 = (Ether(dst=self.pg1.local_mac, @@ -1385,10 +1395,11 @@ class ARPTestCase(VppTestCase): # self.pg0.generate_remote_hosts(2) - forus = VppIpRoute(self, self.pg0.remote_hosts[1].ip4, 32, - [VppRoutePath(self.pg0.remote_hosts[1].ip4, - self.pg0.sw_if_index)], - is_local=1) + forus = VppIpRoute( + self, self.pg0.remote_hosts[1].ip4, 32, + [VppRoutePath("0.0.0.0", + self.pg0.sw_if_index, + type=FibPathType.FIB_PATH_TYPE_LOCAL)]) forus.add_vpp_config() p = (Ether(dst="ff:ff:ff:ff:ff:ff", @@ -1411,6 +1422,14 @@ class ARPTestCase(VppTestCase): class NeighborStatsTestCase(VppTestCase): """ ARP/ND Counters """ + @classmethod + def setUpClass(cls): + super(NeighborStatsTestCase, cls).setUpClass() + + @classmethod + def tearDownClass(cls): + super(NeighborStatsTestCase, cls).tearDownClass() + def setUp(self): super(NeighborStatsTestCase, self).setUp() @@ -1464,14 +1483,14 @@ class NeighborStatsTestCase(VppTestCase): UDP(sport=1234, dport=1234) / Raw()) - rx = self.send_and_expect(self.pg0, p1 * 65, self.pg1) - rx = self.send_and_expect(self.pg0, p2 * 65, self.pg1) + rx = self.send_and_expect(self.pg0, p1 * NUM_PKTS, self.pg1) + rx = self.send_and_expect(self.pg0, p2 * NUM_PKTS, self.pg1) - self.assertEqual(65, arp1.get_stats()['packets']) - self.assertEqual(65, arp2.get_stats()['packets']) + self.assertEqual(NUM_PKTS, arp1.get_stats()['packets']) + self.assertEqual(NUM_PKTS, arp2.get_stats()['packets']) - rx = self.send_and_expect(self.pg0, p1 * 65, self.pg1) - self.assertEqual(130, arp1.get_stats()['packets']) + rx = self.send_and_expect(self.pg0, p1 * NUM_PKTS, self.pg1) + self.assertEqual(NUM_PKTS*2, arp1.get_stats()['packets']) def test_nd_stats(self): """ ND Counters """ @@ -1509,8 +1528,8 @@ class NeighborStatsTestCase(VppTestCase): self.assertEqual(16, nd1.get_stats()['packets']) self.assertEqual(16, nd2.get_stats()['packets']) - rx = self.send_and_expect(self.pg1, p1 * 65, self.pg0) - self.assertEqual(81, nd1.get_stats()['packets']) + rx = self.send_and_expect(self.pg1, p1 * NUM_PKTS, self.pg0) + self.assertEqual(NUM_PKTS+16, nd1.get_stats()['packets']) if __name__ == '__main__':