session: optimize ct fifo segment allocations
[vpp.git] / test / test_l3xc.py
index ceb95ce..d7a8297 100644 (file)
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 
 from socket import inet_pton, inet_ntop, AF_INET, AF_INET6
 import unittest
@@ -34,30 +34,9 @@ class VppL3xc(VppObject):
         self.intf = intf
         self.is_ip6 = is_ip6
         self.paths = paths
-
-    def encode_paths(self):
-        br_paths = []
-        for p in self.paths:
-            lstack = []
-            for l in p.nh_labels:
-                if type(l) == VppMplsLabel:
-                    lstack.append(l.encode())
-                else:
-                    lstack.append({'label': l, 'ttl': 255})
-            n_labels = len(lstack)
-            while (len(lstack) < 16):
-                lstack.append({})
-            br_paths.append({'next_hop': p.nh_addr,
-                             'weight': 1,
-                             'afi': p.proto,
-                             'sw_if_index': p.nh_itf,
-                             'preference': 0,
-                             'table_id': p.nh_table_id,
-                             'next_hop_id': p.next_hop_id,
-                             'is_udp_encap': p.is_udp_encap,
-                             'n_labels': n_labels,
-                             'label_stack': lstack})
-        return br_paths
+        self.encoded_paths = []
+        for path in self.paths:
+            self.encoded_paths.append(path.encode())
 
     def add_vpp_config(self):
         self._test.vapi.l3xc_update(
@@ -65,7 +44,7 @@ class VppL3xc(VppObject):
                 'is_ip6': self.is_ip6,
                 'sw_if_index': self.intf.sw_if_index,
                 'n_paths': len(self.paths),
-                'paths': self.encode_paths()
+                'paths': self.encoded_paths
             })
         self._test.registry.register(self, self._test.logger)
 
@@ -108,7 +87,6 @@ class TestL3xc(VppTestCase):
         for i in self.pg_interfaces:
             i.unconfig_ip4()
             i.unconfig_ip6()
-            i.ip6_disable()
             i.admin_down()
         super(TestL3xc, self).tearDown()
 
@@ -153,7 +131,7 @@ class TestL3xc(VppTestCase):
                      dst=self.pg0.local_mac) /
                IP(src="1.1.1.1", dst="1.1.1.2") /
                UDP(sport=1234, dport=1234) /
-               Raw('\xa5' * 100))
+               Raw(b'\xa5' * 100))
         # self.send_and_expect(self.pg0, p_1*NUM_PKTS, self.pg1)
 
         p_2 = []
@@ -162,7 +140,7 @@ class TestL3xc(VppTestCase):
                              dst=self.pg0.local_mac) /
                        IP(src="1.1.1.1", dst="1.1.1.2") /
                        UDP(sport=1000 + ii, dport=1234) /
-                       Raw('\xa5' * 100))
+                       Raw(b'\xa5' * 100))
         self.send_and_expect_load_balancing(self.pg2, p_2,
                                             [self.pg3, self.pg4, self.pg5])