From d455c8b74a2a63454779445e14ac3e81141b204a Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Sat, 21 Oct 2017 14:58:02 +0300 Subject: [PATCH] test: remove --root option and fix TMP_DIRECTORY cleanup The primary motivation here is to fix TMP_DIRECTORY cleanup prior to running each test when the current working directory is not the test subdirectory. Tests with failures would leave their TMP_DIRECTORY directory behind for debugging, and repeated out-of-tree test runs would have old temp directories. (This lead to e.g. T310-emacs.sh hanging because emacs would prompt for overwriting files.) We remove the likely anyway defunct --root test option while at it, just to be on the safe side when doing 'rm -rf' on the TMP_DIRECTORY. --- test/README | 9 --------- test/test-lib-common.sh | 8 ++------ test/test-lib.sh | 3 --- 3 files changed, 2 insertions(+), 18 deletions(-) diff --git a/test/README b/test/README index 8e06f442..b378c3ff 100644 --- a/test/README +++ b/test/README @@ -80,15 +80,6 @@ The following command-line options are available when running tests: As the names depend on the tests' file names, it is safe to run the tests with this option in parallel. ---root=:: - This runs the testsuites specified under a separate directory. - However, caution is advised, as not all tests are maintained - with this relocation in mind, so some tests may behave - differently. - - Pointing this argument at a tmpfs filesystem can improve the - speed of the test suite for some users. - Certain tests require precomputed databases to complete. You can fetch these databases with diff --git a/test/test-lib-common.sh b/test/test-lib-common.sh index 5e53348a..4300eb65 100644 --- a/test/test-lib-common.sh +++ b/test/test-lib-common.sh @@ -307,13 +307,9 @@ export PATH MANPATH # Test repository test="tmp.$(basename "$0" .sh)" -test -n "$root" && test="$root/$test" -case "$test" in -/*) TMP_DIRECTORY="$test" ;; - *) TMP_DIRECTORY="$TEST_DIRECTORY/$test" ;; -esac +TMP_DIRECTORY="$TEST_DIRECTORY/$test" test ! -z "$debug" || remove_tmp=$TMP_DIRECTORY -rm -fr "$test" || { +rm -rf "$TMP_DIRECTORY" || { GIT_EXIT_OK=t echo >&6 "FATAL: Cannot prepare test area" exit 1 diff --git a/test/test-lib.sh b/test/test-lib.sh index 4619c327..7926d278 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -160,9 +160,6 @@ do valgrind=t; verbose=t; shift ;; --tee) shift ;; # was handled already - --root=*) - root=$(expr "z$1" : 'z[^=]*=\(.*\)') - shift ;; *) echo "error: unknown test option '$1'" >&2; exit 1 ;; esac -- 2.43.0