From ea4fe2045d125e5ba2d4f7bbbf78e8bfebfe84b1 Mon Sep 17 00:00:00 2001 From: Jacques de Laval Date: Thu, 25 Feb 2021 17:38:56 +0100 Subject: [PATCH] test: Add sane default for TESTENV_ROOT; enable easier independent test runs Signed-off-by: Jacques de Laval --- test/Makefile.am | 4 ++-- test/add-remove-dynamic-service-sub-config/test.sh | 2 +- test/add-remove-dynamic-service/test.sh | 2 +- test/lib.sh | 11 +++++++---- test/start-stop-service-sub-config/test.sh | 2 +- test/start-stop-service/test.sh | 2 +- test/testenv_exec.sh | 4 ++-- test/testenv_start.sh | 4 ++-- 8 files changed, 17 insertions(+), 14 deletions(-) diff --git a/test/Makefile.am b/test/Makefile.am index 91a9bbc0..43445ee5 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -9,8 +9,8 @@ EXTRA_DIST += add-remove-dynamic-service-sub-config/test.sh EXTRA_DIST += start-stop-service/test.sh EXTRA_DIST += start-stop-service-sub-config/test.sh -AM_TESTS_ENVIRONMENT = TESTS_ROOT='$(abs_builddir)/test-root/'; -AM_TESTS_ENVIRONMENT += export TESTS_ROOT; +AM_TESTS_ENVIRONMENT = TESTENV_ROOT='$(abs_builddir)/test-root/'; +AM_TESTS_ENVIRONMENT += export TESTENV_ROOT; AM_TESTS_ENVIRONMENT += export LD_LIBRARY_PATH; AM_TESTS_ENVIRONMENT += top_srcdir=$(top_srcdir); AM_TESTS_ENVIRONMENT += export top_srcdir; diff --git a/test/add-remove-dynamic-service-sub-config/test.sh b/test/add-remove-dynamic-service-sub-config/test.sh index af90b983..7e319470 100755 --- a/test/add-remove-dynamic-service-sub-config/test.sh +++ b/test/add-remove-dynamic-service-sub-config/test.sh @@ -17,7 +17,7 @@ test_teardown() { say "Test start $(date)" -cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/ +cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/ say "Add a dynamic service in $FINIT_RCSD/service.conf" texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_RCSD/service.conf" diff --git a/test/add-remove-dynamic-service/test.sh b/test/add-remove-dynamic-service/test.sh index e4b19c66..fc17f5ff 100755 --- a/test/add-remove-dynamic-service/test.sh +++ b/test/add-remove-dynamic-service/test.sh @@ -17,7 +17,7 @@ test_teardown() { say "Test start $(date)" -cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/ +cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/ say "Add a dynamic service in $FINIT_CONF" texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_CONF" diff --git a/test/lib.sh b/test/lib.sh index ff021e12..282c51ab 100755 --- a/test/lib.sh +++ b/test/lib.sh @@ -90,16 +90,19 @@ teardown() { wait - if [ -d "$TESTS_ROOT/var/lock" ]; then + if [ -d "$TESTENV_ROOT/var/lock" ]; then chmod +r test-root/var/lock fi - rm -f "$TESTS_ROOT"/running_test.pid + rm -f "$TESTENV_ROOT"/running_test.pid } trap teardown EXIT +TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}" +export TESTENV_ROOT + # shellcheck source=/dev/null -. "$TESTS_ROOT/../test.env" +. "$TESTENV_ROOT/../test.env" TEST_NAME="$(dirname "$0")" TEST_NAME=${TEST_NAME#*/} @@ -114,7 +117,7 @@ fi # shellcheck disable=2086 "$TEST_DIR/testenv_start.sh" finit ${FINIT_ARGS:-} & finit_ppid=$! -echo "$finit_ppid" > "$TESTS_ROOT"/running_test.pid +echo "$finit_ppid" > "$TESTENV_ROOT"/running_test.pid >&2 echo "Hint: Execute 'test/testenv_enter.sh' to enter the test namespace" >&2 echo "finit conf '$FINIT_CONF'" diff --git a/test/start-stop-service-sub-config/test.sh b/test/start-stop-service-sub-config/test.sh index 0fe91094..80585ec5 100755 --- a/test/start-stop-service-sub-config/test.sh +++ b/test/start-stop-service-sub-config/test.sh @@ -17,7 +17,7 @@ test_teardown() { say "Test start $(date)" -cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/ +cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/ say "Add service stanza in $FINIT_RCSD/service.conf" texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_RCSD/service.conf" diff --git a/test/start-stop-service/test.sh b/test/start-stop-service/test.sh index 8125f6df..c429a695 100755 --- a/test/start-stop-service/test.sh +++ b/test/start-stop-service/test.sh @@ -17,7 +17,7 @@ test_teardown() { say "Test start $(date)" -cp "$TEST_DIR"/common/service.sh "$TESTS_ROOT"/test_assets/ +cp "$TEST_DIR"/common/service.sh "$TESTENV_ROOT"/test_assets/ say "Add service stanza in $FINIT_CONF" texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_CONF" diff --git a/test/testenv_exec.sh b/test/testenv_exec.sh index aa0aafda..b467076e 100755 --- a/test/testenv_exec.sh +++ b/test/testenv_exec.sh @@ -11,7 +11,7 @@ target="$1" shift TEST_DIR=$(dirname "$0") -TESTS_ROOT="${TESTS_ROOT:-$(pwd)/${TEST_DIR}/test-root}" +TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}" nsenter=$(command -v nsenter) chroot=$(command -v chroot) @@ -33,4 +33,4 @@ export PATH --net \ --pid \ -w -t "$target" \ - "$chroot" "$TESTS_ROOT" "$@" + "$chroot" "$TESTENV_ROOT" "$@" diff --git a/test/testenv_start.sh b/test/testenv_start.sh index cd1ea7c7..ec824ed9 100755 --- a/test/testenv_start.sh +++ b/test/testenv_start.sh @@ -3,7 +3,7 @@ set -eu TEST_DIR=$(dirname "$0") -TESTS_ROOT="${TESTS_ROOT:-$(pwd)/${TEST_DIR}/test-root}" +TESTENV_ROOT="${TESTENV_ROOT:-$(pwd)/${TEST_DIR}/test-root}" unshare=$(command -v unshare) chroot=$(command -v chroot) @@ -24,4 +24,4 @@ exec "$unshare" \ --mount \ --mount-proc \ --uts --ipc --net \ - "$chroot" "$TESTS_ROOT" /bin/chrootsetup.sh "$@" + "$chroot" "$TESTENV_ROOT" /bin/chrootsetup.sh "$@"