session/svm: add want_tx_event flag to fifo
[vpp.git] / test / test_vcl.py
index 32db155..8e8cc40 100644 (file)
@@ -19,12 +19,12 @@ class VCLAppWorker(Worker):
             app = appname
             env.update({'LD_PRELOAD':
                         "%s/libvcl_ldpreload.so" % vcl_lib_dir})
+        elif "sock" in appname:
+            app = "%s/vpp/bin/%s" % (build_dir, appname)
+            env.update({'LD_PRELOAD':
+                        "%s/libvcl_ldpreload.so" % vcl_lib_dir})
         else:
-            app = "%s/%s" % (vcl_lib_dir, appname)
-            if not os.path.isfile(app):
-                app = "%s/vpp/%s" % (build_dir, appname)
-                env.update({'LD_PRELOAD':
-                            "%s/libvcl_ldpreload.so" % vcl_lib_dir})
+            app = "%s/vpp/bin/%s" % (build_dir, appname)
         self.args = [app] + args
         super(VCLAppWorker, self).__init__(self.args, logger, env)
 
@@ -222,7 +222,7 @@ class VCLCutThruTestCase(VCLTestCase):
         self.client_echo_test_args = ["-E", self.echo_phrase, "-X",
                                       self.server_addr, self.server_port]
         self.client_iperf3_timeout = 20
-        self.client_iperf3_args = ["-V4d", "-c", self.server_addr]
+        self.client_iperf3_args = ["-V4d", "-t 5", "-c", self.server_addr]
         self.server_iperf3_args = ["-V4d", "-s"]
         self.client_uni_dir_nsock_timeout = 60
         self.client_uni_dir_nsock_test_args = ["-I", "5", "-U", "-X",
@@ -241,8 +241,8 @@ class VCLCutThruTestCase(VCLTestCase):
     def test_ldp_cut_thru_echo(self):
         """ run LDP cut thru echo test """
 
-        self.cut_thru_test("bin/sock_test_server", self.server_args,
-                           "bin/sock_test_client", self.client_echo_test_args)
+        self.cut_thru_test("sock_test_server", self.server_args,
+                           "sock_test_client", self.client_echo_test_args)
 
     def test_ldp_cut_thru_iperf3(self):
         """ run LDP cut thru iperf3 test """
@@ -263,8 +263,8 @@ class VCLCutThruTestCase(VCLTestCase):
         """ run LDP cut thru uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.cut_thru_test("bin/sock_test_server", self.server_args,
-                           "bin/sock_test_client",
+        self.cut_thru_test("sock_test_server", self.server_args,
+                           "sock_test_client",
                            self.client_uni_dir_nsock_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
@@ -272,23 +272,23 @@ class VCLCutThruTestCase(VCLTestCase):
         """ run LDP cut thru bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.cut_thru_test("bin/sock_test_server", self.server_args,
-                           "bin/sock_test_client",
+        self.cut_thru_test("sock_test_server", self.server_args,
+                           "sock_test_client",
                            self.client_bi_dir_nsock_test_args)
 
     def test_vcl_cut_thru_echo(self):
         """ run VCL cut thru echo test """
 
-        self.cut_thru_test("bin/vcl_test_server", self.server_args,
-                           "bin/vcl_test_client", self.client_echo_test_args)
+        self.cut_thru_test("vcl_test_server", self.server_args,
+                           "vcl_test_client", self.client_echo_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
     def test_vcl_cut_thru_uni_dir_nsock(self):
         """ run VCL cut thru uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.cut_thru_test("bin/vcl_test_server", self.server_args,
-                           "bin/vcl_test_client",
+        self.cut_thru_test("vcl_test_server", self.server_args,
+                           "vcl_test_client",
                            self.client_uni_dir_nsock_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
@@ -296,8 +296,8 @@ class VCLCutThruTestCase(VCLTestCase):
         """ run VCL cut thru bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.cut_thru_test("bin/vcl_test_server", self.server_args,
-                           "bin/vcl_test_client",
+        self.cut_thru_test("vcl_test_server", self.server_args,
+                           "vcl_test_client",
                            self.client_bi_dir_nsock_test_args)
 
 
@@ -320,20 +320,20 @@ class VCLThruHostStackTestCase(VCLTestCase):
     def test_ldp_thru_host_stack_echo(self):
         """ run LDP thru host stack echo test """
 
-        self.thru_host_stack_test("bin/sock_test_server", self.server_args,
-                                  "bin/sock_test_client",
+        self.thru_host_stack_test("sock_test_server", self.server_args,
+                                  "sock_test_client",
                                   self.client_echo_test_args)
         # TBD: Remove these when VPP thru host teardown config bug is fixed.
-        self.thru_host_stack_test("bin/vcl_test_server", self.server_args,
-                                  "bin/vcl_test_client",
+        self.thru_host_stack_test("vcl_test_server", self.server_args,
+                                  "vcl_test_client",
                                   self.client_echo_test_args)
 
     def test_vcl_thru_host_stack_echo(self):
         """ run VCL thru host stack echo test """
 
         # TBD: Enable this when VPP  thru host teardown config bug is fixed.
-        # self.thru_host_stack_test("bin/vcl_test_server", self.server_args,
-        #                           "bin/vcl_test_client",
+        # self.thru_host_stack_test("vcl_test_server", self.server_args,
+        #                           "vcl_test_client",
         #                           self.client_echo_test_args)
 
     # TBD: Remove VCLThruHostStackExtended*TestCase classes and move
@@ -341,41 +341,42 @@ class VCLThruHostStackTestCase(VCLTestCase):
     #      is fixed.
 
 
-class VCLThruHostStackExtendedATestCase(VCLTestCase):
-    """ VCL Thru Host Stack Extended Tests """
+class VCLThruHostStackNSessionBidirTestCase(VCLTestCase):
+    """ VCL Thru Host Stack NSession Bidir Tests """
 
     def setUp(self):
-        super(VCLThruHostStackExtendedATestCase, self).setUp()
+        super(VCLThruHostStackNSessionBidirTestCase, self).setUp()
 
         self.thru_host_stack_setup()
         if self.vppDebug:
             self.client_bi_dir_nsock_timeout = 120
-            self.client_bi_dir_nsock_test_args = ["-B", "-X",
+            self.client_bi_dir_nsock_test_args = ["-B", "-X", "-N 10000",
                                                   self.loop0.local_ip4,
                                                   self.server_port]
         else:
             self.client_bi_dir_nsock_timeout = 90
             self.client_bi_dir_nsock_test_args = ["-I", "2", "-B", "-X",
+                                                  "-N 1000",
                                                   self.loop0.local_ip4,
                                                   self.server_port]
 
     def tearDown(self):
         self.thru_host_stack_tear_down()
 
-        super(VCLThruHostStackExtendedATestCase, self).tearDown()
+        super(VCLThruHostStackNSessionBidirTestCase, self).tearDown()
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
     def test_vcl_thru_host_stack_bi_dir_nsock(self):
         """ run VCL thru host stack bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.thru_host_stack_test("bin/vcl_test_server", self.server_args,
-                                  "bin/vcl_test_client",
+        self.thru_host_stack_test("vcl_test_server", self.server_args,
+                                  "vcl_test_client",
                                   self.client_bi_dir_nsock_test_args)
 
 
 class VCLThruHostStackExtendedBTestCase(VCLTestCase):
-    """ VCL Thru Host Stack Extended Tests """
+    """ VCL Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLThruHostStackExtendedBTestCase, self).setUp()
@@ -383,12 +384,13 @@ class VCLThruHostStackExtendedBTestCase(VCLTestCase):
         self.thru_host_stack_setup()
         if self.vppDebug:
             self.client_bi_dir_nsock_timeout = 120
-            self.client_bi_dir_nsock_test_args = ["-B", "-X",
+            self.client_bi_dir_nsock_test_args = ["-B", "-X", "-N 1000",
                                                   self.loop0.local_ip4,
                                                   self.server_port]
         else:
             self.client_bi_dir_nsock_timeout = 60
             self.client_bi_dir_nsock_test_args = ["-I", "2", "-B", "-X",
+                                                  "-N 1000",
                                                   self.loop0.local_ip4,
                                                   self.server_port]
 
@@ -408,7 +410,7 @@ class VCLThruHostStackExtendedBTestCase(VCLTestCase):
 
 
 class VCLThruHostStackExtendedCTestCase(VCLTestCase):
-    """ VCL Thru Host Stack Extended Tests """
+    """ VCL Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLThruHostStackExtendedCTestCase, self).setUp()
@@ -422,7 +424,7 @@ class VCLThruHostStackExtendedCTestCase(VCLTestCase):
             self.numSockets = "5"
 
         self.client_uni_dir_nsock_test_args = ["-I", self.numSockets,
-                                               "-U", "-X",
+                                               "-U", "-X", "-N 1000",
                                                self.loop0.local_ip4,
                                                self.server_port]
 
@@ -442,7 +444,7 @@ class VCLThruHostStackExtendedCTestCase(VCLTestCase):
 
 
 class VCLThruHostStackExtendedDTestCase(VCLTestCase):
-    """ VCL Thru Host Stack Extended Tests """
+    """ VCL Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLThruHostStackExtendedDTestCase, self).setUp()
@@ -456,7 +458,7 @@ class VCLThruHostStackExtendedDTestCase(VCLTestCase):
             self.numSockets = "5"
 
         self.client_uni_dir_nsock_test_args = ["-I", self.numSockets,
-                                               "-U", "-X",
+                                               "-U", "-X", "-N 1000",
                                                self.loop0.local_ip4,
                                                self.server_port]
 
@@ -470,8 +472,8 @@ class VCLThruHostStackExtendedDTestCase(VCLTestCase):
         """ run VCL thru host stack uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.thru_host_stack_test("bin/vcl_test_server", self.server_args,
-                                  "bin/vcl_test_client",
+        self.thru_host_stack_test("vcl_test_server", self.server_args,
+                                  "vcl_test_client",
                                   self.client_uni_dir_nsock_test_args)
 
 
@@ -483,7 +485,7 @@ class VCLThruHostStackIperfTestCase(VCLTestCase):
 
         self.thru_host_stack_setup()
         self.client_iperf3_timeout = 20
-        self.client_iperf3_args = ["-V4d", "-c", self.loop0.local_ip4]
+        self.client_iperf3_args = ["-V4d", "-t 5", "-c", self.loop0.local_ip4]
         self.server_iperf3_args = ["-V4d", "-s"]
 
     def tearDown(self):
@@ -520,7 +522,8 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
         self.client_ipv6_echo_test_args = ["-6", "-E", self.echo_phrase, "-X",
                                            self.server_ipv6_addr,
                                            self.server_port]
-        self.client_ipv6_iperf3_args = ["-V6d", "-c", self.server_ipv6_addr]
+        self.client_ipv6_iperf3_args = ["-V6d", "-t 5", "-c",
+                                        self.server_ipv6_addr]
         self.server_ipv6_iperf3_args = ["-V6d", "-s"]
         self.client_ipv6_uni_dir_nsock_test_args = ["-6", "-I", "5",
                                                     "-U", "-X",
@@ -539,9 +542,9 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
     def test_ldp_ipv6_cut_thru_echo(self):
         """ run LDP IPv6 cut thru echo test """
 
-        self.cut_thru_test("bin/sock_test_server",
+        self.cut_thru_test("sock_test_server",
                            self.server_ipv6_args,
-                           "bin/sock_test_client",
+                           "sock_test_client",
                            self.client_ipv6_echo_test_args)
 
     def test_ldp_ipv6_cut_thru_iperf3(self):
@@ -564,8 +567,8 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
         """ run LDP IPv6 cut thru uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.cut_thru_test("bin/sock_test_server", self.server_ipv6_args,
-                           "bin/sock_test_client",
+        self.cut_thru_test("sock_test_server", self.server_ipv6_args,
+                           "sock_test_client",
                            self.client_ipv6_uni_dir_nsock_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
@@ -573,16 +576,16 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
         """ run LDP IPv6 cut thru bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.cut_thru_test("bin/sock_test_server", self.server_ipv6_args,
-                           "bin/sock_test_client",
+        self.cut_thru_test("sock_test_server", self.server_ipv6_args,
+                           "sock_test_client",
                            self.client_ipv6_bi_dir_nsock_test_args)
 
     def test_vcl_ipv6_cut_thru_echo(self):
         """ run VCL IPv6 cut thru echo test """
 
-        self.cut_thru_test("bin/vcl_test_server",
+        self.cut_thru_test("vcl_test_server",
                            self.server_ipv6_args,
-                           "bin/vcl_test_client",
+                           "vcl_test_client",
                            self.client_ipv6_echo_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
@@ -590,8 +593,8 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
         """ run VCL IPv6 cut thru uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.cut_thru_test("bin/vcl_test_server", self.server_ipv6_args,
-                           "bin/vcl_test_client",
+        self.cut_thru_test("vcl_test_server", self.server_ipv6_args,
+                           "vcl_test_client",
                            self.client_ipv6_uni_dir_nsock_test_args)
 
     @unittest.skipUnless(running_extended_tests(), "part of extended tests")
@@ -599,8 +602,8 @@ class VCLIpv6CutThruTestCase(VCLTestCase):
         """ run VCL IPv6 cut thru bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.cut_thru_test("bin/vcl_test_server", self.server_ipv6_args,
-                           "bin/vcl_test_client",
+        self.cut_thru_test("vcl_test_server", self.server_ipv6_args,
+                           "vcl_test_client",
                            self.client_ipv6_bi_dir_nsock_test_args)
 
 
@@ -623,22 +626,22 @@ class VCLIpv6ThruHostStackTestCase(VCLTestCase):
     def test_ldp_ipv6_thru_host_stack_echo(self):
         """ run LDP IPv6 thru host stack echo test """
 
-        self.thru_host_stack_test("bin/sock_test_server",
+        self.thru_host_stack_test("sock_test_server",
                                   self.server_ipv6_args,
-                                  "bin/sock_test_client",
+                                  "sock_test_client",
                                   self.client_ipv6_echo_test_args)
         # TBD: Remove these when VPP thru host teardown config bug is fixed.
-        self.thru_host_stack_test("bin/vcl_test_server",
+        self.thru_host_stack_test("vcl_test_server",
                                   self.server_ipv6_args,
-                                  "bin/vcl_test_client",
+                                  "vcl_test_client",
                                   self.client_ipv6_echo_test_args)
 
     def test_vcl_ipv6_thru_host_stack_echo(self):
         """ run VCL IPv6 thru host stack echo test """
 
-#        self.thru_host_stack_test("bin/vcl_test_server",
+#        self.thru_host_stack_test("vcl_test_server",
 #                                  self.server_ipv6_args,
-#                                  "bin/vcl_test_client",
+#                                  "vcl_test_client",
 #                                  self.client_ipv6_echo_test_args)
 
     # TBD: Remove VCLIpv6ThruHostStackExtended*TestCase classes and move
@@ -647,7 +650,7 @@ class VCLIpv6ThruHostStackTestCase(VCLTestCase):
 
 
 class VCLIpv6ThruHostStackExtendedATestCase(VCLTestCase):
-    """ VCL IPv6 Thru Host Stack Extended Tests """
+    """ VCL IPv6 Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLIpv6ThruHostStackExtendedATestCase, self).setUp()
@@ -675,13 +678,13 @@ class VCLIpv6ThruHostStackExtendedATestCase(VCLTestCase):
         """ run VCL thru host stack bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.thru_host_stack_test("bin/vcl_test_server", self.server_ipv6_args,
-                                  "bin/vcl_test_client",
+        self.thru_host_stack_test("vcl_test_server", self.server_ipv6_args,
+                                  "vcl_test_client",
                                   self.client_ipv6_bi_dir_nsock_test_args)
 
 
 class VCLIpv6ThruHostStackExtendedBTestCase(VCLTestCase):
-    """ VCL IPv6 Thru Host Stack Extended Tests """
+    """ VCL IPv6 Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLIpv6ThruHostStackExtendedBTestCase, self).setUp()
@@ -709,14 +712,14 @@ class VCLIpv6ThruHostStackExtendedBTestCase(VCLTestCase):
         """ run LDP thru host stack bi-directional (multiple sockets) test """
 
         self.timeout = self.client_bi_dir_nsock_timeout
-        self.thru_host_stack_test("bin/sock_test_server",
+        self.thru_host_stack_test("sock_test_server",
                                   self.server_ipv6_args,
-                                  "bin/sock_test_client",
+                                  "sock_test_client",
                                   self.client_ipv6_bi_dir_nsock_test_args)
 
 
 class VCLIpv6ThruHostStackExtendedCTestCase(VCLTestCase):
-    """ VCL IPv6 Thru Host Stack Extended Tests """
+    """ VCL IPv6 Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLIpv6ThruHostStackExtendedCTestCase, self).setUp()
@@ -745,14 +748,14 @@ class VCLIpv6ThruHostStackExtendedCTestCase(VCLTestCase):
         """ run LDP thru host stack uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.thru_host_stack_test("bin/sock_test_server",
+        self.thru_host_stack_test("sock_test_server",
                                   self.server_ipv6_args,
-                                  "bin/sock_test_client",
+                                  "sock_test_client",
                                   self.client_ipv6_uni_dir_nsock_test_args)
 
 
 class VCLIpv6ThruHostStackExtendedDTestCase(VCLTestCase):
-    """ VCL IPv6 Thru Host Stack Extended Tests """
+    """ VCL IPv6 Thru Host Stack Extended Tests """
 
     def setUp(self):
         super(VCLIpv6ThruHostStackExtendedDTestCase, self).setUp()
@@ -781,8 +784,8 @@ class VCLIpv6ThruHostStackExtendedDTestCase(VCLTestCase):
         """ run VCL thru host stack uni-directional (multiple sockets) test """
 
         self.timeout = self.client_uni_dir_nsock_timeout
-        self.thru_host_stack_test("bin/vcl_test_server", self.server_ipv6_args,
-                                  "bin/vcl_test_client",
+        self.thru_host_stack_test("vcl_test_server", self.server_ipv6_args,
+                                  "vcl_test_client",
                                   self.client_ipv6_uni_dir_nsock_test_args)
 
 
@@ -794,7 +797,8 @@ class VCLIpv6ThruHostStackIperfTestCase(VCLTestCase):
 
         self.thru_host_stack_ipv6_setup()
         self.client_iperf3_timeout = 20
-        self.client_ipv6_iperf3_args = ["-V6d", "-c", self.loop0.local_ip6]
+        self.client_ipv6_iperf3_args = ["-V6d", "-t 5", "-c",
+                                        self.loop0.local_ip6]
         self.server_ipv6_iperf3_args = ["-V6d", "-s"]
 
     def tearDown(self):