Test Infra: Add plugin support 19/3319/2
authorPierre Pfister <ppfister@cisco.com>
Fri, 7 Oct 2016 15:30:03 +0000 (16:30 +0100)
committerDamjan Marion <dmarion.lists@gmail.com>
Fri, 7 Oct 2016 21:34:59 +0000 (21:34 +0000)
This patch adds plugin path to vpp commandline arguments
when 'make test' is run.
Hence, test cases can test plugins.

Change-Id: Ib90efa1f62e03b45b84533c49c7a5d040aa8cddf
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Makefile
test/framework.py

index 3db644e..4b7170d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -192,6 +192,7 @@ define test
        @make -C test \
          VPP_TEST_BIN=$(BR)/install-$(1)-native/vpp/bin/vpp \
          VPP_TEST_API_TEST_BIN=$(BR)/install-$(1)-native/vpp-api-test/bin/vpp_api_test \
+         VPP_TEST_PLUGIN_PATH=$(BR)/install-$(1)-native/plugins/lib64/vpp_plugins \
          V=$(V) TEST=$(TEST)
 endef
 
@@ -199,14 +200,14 @@ test:
 ifeq ($(OS_ID),ubuntu)
        @sudo -E apt-get $(CONFIRM) $(FORCE) install python-dev python-scapy
 endif
-       @make -C $(BR) PLATFORM=vpp_lite TAG=vpp_lite vpp-install vpp-api-test-install
+       @make -C $(BR) PLATFORM=vpp_lite TAG=vpp_lite plugins-install vpp-install vpp-api-test-install
        $(call test,vpp_lite)
 
 test-debug:
 ifeq ($(OS_ID),ubuntu)
        @sudo -E apt-get $(CONFIRM) $(FORCE) install python-dev python-scapy
 endif
-       @make -C $(BR) PLATFORM=vpp_lite TAG=vpp_lite_debug vpp-install vpp-api-test-install
+       @make -C $(BR) PLATFORM=vpp_lite TAG=vpp_lite_debug plugins-install vpp-install vpp-api-test-install
        $(call test,vpp_lite_debug)
 
 retest:
index 0ee266e..8bfb551 100644 (file)
@@ -58,10 +58,14 @@ class VppTestCase(unittest.TestCase):
     @classmethod
     def setUpConstants(cls):
         cls.vpp_bin = os.getenv('VPP_TEST_BIN', "vpp")
+        cls.plugin_path = os.getenv('VPP_TEST_PLUGIN_PATH')
         cls.vpp_api_test_bin = os.getenv("VPP_TEST_API_TEST_BIN",
                                          "vpp-api-test")
         cls.vpp_cmdline = [cls.vpp_bin, "unix", "nodaemon", "api-segment", "{",
                            "prefix", "unittest", "}"]
+        if cls.plugin_path is not None:
+            cls.vpp_cmdline.extend(["plugin_path", cls.plugin_path])
+
         cls.vpp_api_test_cmdline = [cls.vpp_api_test_bin, "chroot", "prefix",
                                     "unittest"]
         try: