chiark / gitweb /
test suite: run-all: Move setting of TESTSCRIPTS
[dgit.git] / tests / run-all
index c93017192ee428ee1135b133bc39ea4c1f7808b7..b18822304ae04d6712dfcc57b11d7d4f7ceabfb7 100755 (executable)
@@ -17,13 +17,29 @@ done
 ncpus=$(nproc || echo 1)
 jcpus=-j$(( ncpus * 134 / 100 ))
 
-if [ $# != 0 ]; then
-       set TESTSCRIPTS="$*"
+if [ "x$DGIT_TESTS_TMPDIR" != x ]; then
+       tmpdir="$PWD"
+       tmpdir="${tmpdir#/}"
+       tmpdir="${tmpdir//!/!#!}"
+       tmpdir="${tmpdir//\//!}"
+       tmpdir="$DGIT_TESTS_TMPDIR/$tmpdir"
+       rm -f tests/tmp
+       ln -ns -- "$tmpdir" tests/tmp
+else
+       tmpdir=tests/tmp
 fi
 
-mkdir -p tests/tmp
+case "$DGIT_TESTS_PROGRESSIVE" in
+''|n)
+       rm -rf -- "$tmpdir"
+       ;;
+esac
+
+mkdir -p -- "$tmpdir"
 
-${DGIT_TESTS_PROGRESSIVE+:} rm -f tests/tmp/*.ok
+if [ $# != 0 ]; then
+       set TESTSCRIPTS="$*"
+fi
 
 export DGIT_GNUPG_STUNT_ERRLOG=$( tty -s ||: )