Typos. A bunch of typos I've been collecting.
[vpp.git] / test / test_neighbor.py
index 47f002c..c3005cc 100644 (file)
@@ -7,7 +7,9 @@ from framework import VppTestCase, VppTestRunner
 from vpp_neighbor import VppNeighbor, find_nbr
 from vpp_ip_route import VppIpRoute, VppRoutePath, find_route, \
     VppIpTable, DpoProto
+from vpp_papi import VppEnum
 
+import scapy.compat
 from scapy.packet import Raw
 from scapy.layers.l2 import Ether, ARP, Dot1Q
 from scapy.layers.inet import IP, UDP
@@ -498,7 +500,7 @@ class ARPTestCase(VppTestCase):
                              self.pg1._remote_hosts[9].ip4)
 
         #
-        # Add a hierachy of routes for a host in the sub-net.
+        # Add a hierarchy of routes for a host in the sub-net.
         # Should still get an ARP resp since the cover is attached
         #
         p = (Ether(dst="ff:ff:ff:ff:ff:ff", src=self.pg1.remote_mac) /
@@ -597,8 +599,8 @@ class ARPTestCase(VppTestCase):
         #
         #  2 - don't respond to ARP request from an address not within the
         #      interface's sub-net
-        #   2b - to a prxied address
-        #   2c - not within a differents interface's sub-net
+        #   2b - to a proxied address
+        #   2c - not within a different interface's sub-net
         p = (Ether(dst="ff:ff:ff:ff:ff:ff", src=self.pg0.remote_mac) /
              ARP(op="who-has",
                  hwsrc=self.pg0.remote_mac,
@@ -693,8 +695,8 @@ class ARPTestCase(VppTestCase):
         #
         # Configure Proxy ARP for the subnet on PG0addresses on pg0
         #
-        self.vapi.proxy_arp_add_del(self.pg0._local_ip4n_subnet,
-                                    self.pg0._local_ip4n_bcast)
+        self.vapi.proxy_arp_add_del(self.pg0._local_ip4_subnet,
+                                    self.pg0._local_ip4_bcast)
 
         # Make pg2 un-numbered to pg0
         #
@@ -731,8 +733,8 @@ class ARPTestCase(VppTestCase):
         # cleanup
         #
         self.pg2.set_proxy_arp(0)
-        self.vapi.proxy_arp_add_del(self.pg0._local_ip4n_subnet,
-                                    self.pg0._local_ip4n_bcast,
+        self.vapi.proxy_arp_add_del(self.pg0._local_ip4_subnet,
+                                    self.pg0._local_ip4_bcast,
                                     is_add=0)
 
     def test_proxy_arp(self):
@@ -741,7 +743,7 @@ class ARPTestCase(VppTestCase):
         self.pg1.generate_remote_hosts(2)
 
         #
-        # Proxy ARP rewquest packets for each interface
+        # Proxy ARP request packets for each interface
         #
         arp_req_pg0 = (Ether(src=self.pg0.remote_mac,
                              dst="ff:ff:ff:ff:ff:ff") /
@@ -909,7 +911,7 @@ class ARPTestCase(VppTestCase):
         self.pg2.generate_remote_hosts(2)
 
         #
-        # Add a reoute with out going label via an ARP unresolved next-hop
+        # Add a route with out going label via an ARP unresolved next-hop
         #
         ip_10_0_0_1 = VppIpRoute(self, "10.0.0.1", 32,
                                  [VppRoutePath(self.pg2.remote_hosts[1].ip4,
@@ -971,11 +973,7 @@ class ARPTestCase(VppTestCase):
               UDP(sport=1234, dport=1234) /
               Raw())
 
-        self.pg0.add_stream(p0)
-        self.pg_enable_capture(self.pg_interfaces)
-        self.pg_start()
-
-        rx1 = self.pg1.get_capture(1)
+        rx1 = self.send_and_expect(self.pg0, [p0], self.pg1)
 
         self.verify_arp_req(rx1[0],
                             self.pg1.local_mac,
@@ -992,20 +990,14 @@ class ARPTestCase(VppTestCase):
                   hwsrc="00:00:5e:00:01:09", pdst=self.pg1.local_ip4,
                   psrc=self.pg1.remote_ip4))
 
-        self.pg1.add_stream(p1)
-        self.pg_enable_capture(self.pg_interfaces)
-        self.pg_start()
+        self.send_and_assert_no_replies(self.pg1, p1, "ARP reply")
 
         #
         # IP packet destined for pg1 remote host arrives on pg0 again.
         # VPP should have an ARP entry for that address now and the packet
         # should be sent out pg1.
         #
-        self.pg0.add_stream(p0)
-        self.pg_enable_capture(self.pg_interfaces)
-        self.pg_start()
-
-        rx1 = self.pg1.get_capture(1)
+        rx1 = self.send_and_expect(self.pg0, [p0], self.pg1)
 
         self.verify_ip(rx1[0],
                        self.pg1.local_mac,
@@ -1062,7 +1054,7 @@ class ARPTestCase(VppTestCase):
 
         #
         # remove the duplicate on pg1
-        # packet stream shoud generate ARPs out of pg1
+        # packet stream should generate ARPs out of pg1
         #
         arp_pg1.remove_vpp_config()
 
@@ -1187,8 +1179,9 @@ class ARPTestCase(VppTestCase):
         #
         # change the interface's MAC
         #
-        mac = [chr(0x00), chr(0x00), chr(0x00),
-               chr(0x33), chr(0x33), chr(0x33)]
+        mac = [scapy.compat.chb(0x00), scapy.compat.chb(0x00),
+               scapy.compat.chb(0x00), scapy.compat.chb(0x33),
+               scapy.compat.chb(0x33), scapy.compat.chb(0x33)]
         mac_string = ''.join(mac)
 
         self.vapi.sw_interface_set_mac_address(self.pg1.sw_if_index,
@@ -1214,7 +1207,7 @@ class ARPTestCase(VppTestCase):
                        self.pg1.remote_hosts[1].ip4)
 
         #
-        # set the mac address on the inteface that does not have a
+        # set the mac address on the interface that does not have a
         # configured subnet and thus no glean
         #
         self.vapi.sw_interface_set_mac_address(self.pg2.sw_if_index,
@@ -1283,7 +1276,7 @@ class ARPTestCase(VppTestCase):
                                  mac=self.pg1.remote_hosts[3].mac))
 
         #
-        # GARPs (requets nor replies) for host we don't know yet
+        # GARPs (request nor replies) for host we don't know yet
         # don't result in new neighbour entries
         #
         p1 = (Ether(dst="ff:ff:ff:ff:ff:ff",
@@ -1387,7 +1380,7 @@ class ARPTestCase(VppTestCase):
         # Test that VPP responds with ARP requests to addresses that
         # are connected and local routes.
         # Use one of the 'remote' addresses in the subnet as a local address
-        # The intention of this route is that it then acts like a secondardy
+        # The intention of this route is that it then acts like a secondary
         # address added to an interface
         #
         self.pg0.generate_remote_hosts(2)
@@ -1416,7 +1409,7 @@ class ARPTestCase(VppTestCase):
 
 
 class NeighborStatsTestCase(VppTestCase):
-    """ ARP Test Case """
+    """ ARP/ND Counters """
 
     def setUp(self):
         super(NeighborStatsTestCase, self).setUp()
@@ -1489,14 +1482,12 @@ class NeighborStatsTestCase(VppTestCase):
         nd1 = VppNeighbor(self,
                           self.pg0.sw_if_index,
                           self.pg0.remote_hosts[1].mac,
-                          self.pg0.remote_hosts[1].ip6,
-                          af=AF_INET6)
+                          self.pg0.remote_hosts[1].ip6)
         nd1.add_vpp_config()
         nd2 = VppNeighbor(self,
                           self.pg0.sw_if_index,
                           self.pg0.remote_hosts[2].mac,
-                          self.pg0.remote_hosts[2].ip6,
-                          af=AF_INET6)
+                          self.pg0.remote_hosts[2].ip6)
         nd2.add_vpp_config()
 
         p1 = (Ether(dst=self.pg1.local_mac,