make test: add make test-shell[-debug] targets
This starts a bash with the same environment as the test framework
uses, allowing easy debugging.
Change-Id: I956deda913b73dae5b1e1976417834ae4731f88a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
diff --git a/Makefile b/Makefile
index 7faba3b..f0173cc 100644
--- a/Makefile
+++ b/Makefile
@@ -86,6 +86,8 @@
@echo " test-debug - build and run (basic) functional tests (debug build)"
@echo " test-all - build and run (all) functional tests"
@echo " test-all-debug - build and run (all) functional tests (debug build)"
+ @echo " test-shell - enter shell with test environment"
+ @echo " test-shell-debug - enter shell with test environment (debug build)"
@echo " test-wipe - wipe files generated by unit tests"
@echo " retest - run functional tests"
@echo " retest-debug - run functional tests (debug build)"
@@ -247,6 +249,12 @@
test-wipe:
@make -C test wipe
+test-shell: bootstrap
+ $(call test,vpp_lite,vpp_lite,shell)
+
+test-shell-debug: bootstrap
+ $(call test,vpp_lite,vpp_lite_debug,shell)
+
test-doc:
@make -C test doc
diff --git a/test/Makefile b/test/Makefile
index 1bb3c6c..0214980 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -68,6 +68,17 @@
retest: verify-python-path verify-no-running-vpp reset
$(call retest-func)
+shell: verify-python-path $(PAPI_INSTALL_DONE)
+ @echo "source $(PYTHON_VENV_PATH)/bin/activate;\
+ echo '***';\
+ echo VPP_TEST_BUILD_DIR=$(VPP_TEST_BUILD_DIR);\
+ echo VPP_TEST_BIN=$(VPP_TEST_BIN);\
+ echo VPP_TEST_PLUGIN_PATH=$(VPP_TEST_PLUGIN_PATH);\
+ echo VPP_TEST_INSTALL_PATH=$(VPP_TEST_INSTALL_PATH);\
+ echo LD_LIBRARY_PATH=$(LD_LIBRARY_PATH);\
+ echo '***';\
+ exec </dev/tty" | bash -i
+
.PHONY: wipe doc
reset:
@@ -126,6 +137,8 @@
@echo " retest - run functional tests"
@echo " retest-debug - run functional tests (debug build)"
@echo " test-wipe - wipe (temporary) files generated by unit tests"
+ @echo " test-shell - enter shell with test environment"
+ @echo " test-shell-debug - enter shell with test environment (debug build)"
@echo ""
@echo "Arguments controlling test runs:"
@echo " V=[0|1|2] - set test verbosity level"