summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2018-07-26 06:35:31 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2018-07-26 10:04:30 +0100
commitd7e20af364775278c1f7f2398c8debdb0af8fb40 (patch)
treebce32cf28a830ce8ff5939c4e82b170dc85ec59e
parentf0b46b0422f6ce3bb7c360ee3717eef95d621526 (diff)
test suite: run-all: Minor refactoring etc.
* Makefile: Move the DGIT_TEST_RETRY_COUNT if/else into the rule. This removes a small amount of duplication. * run-all: Document the option to pass explicitly list of scripts. * run-all: Add an option parser, which currently supports no options. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rw-r--r--tests/Makefile6
-rwxr-xr-xtests/run-all10
2 files changed, 10 insertions, 6 deletions
diff --git a/tests/Makefile b/tests/Makefile
index e6ce153..44b7458 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -12,14 +12,11 @@ all: $(foreach t,$(TESTNAMES),tests/tmp/$t.ok)
tests/tmp:
mkdir -p $@
-ifeq ($(DGIT_TEST_RETRY_COUNT),)
tests/tmp/%.ok: tests/tmp
+ifeq ($(DGIT_TEST_RETRY_COUNT),)
tests/tests/$* >tests/tmp/$*.log 2>&1
-
else
-
-tests/tmp/%.ok: tests/tmp
@for retry in $$( seq 1 $(DGIT_TEST_RETRY_COUNT) ); do \
echo "[$$retry] $*"; \
tests/tests/$* >tests/tmp/$*.$$retry.log 2>&1; \
@@ -27,5 +24,4 @@ tests/tmp/%.ok: tests/tmp
if [ $$rc = 0 ]; then exit 0; fi; \
echo >&2 "[$$retry] $* TEST FAILED $$rc"; \
done; exit $$rc
-
endif
diff --git a/tests/run-all b/tests/run-all
index f72b9fa..3e40369 100755
--- a/tests/run-all
+++ b/tests/run-all
@@ -1,10 +1,18 @@
#!/bin/bash
set -e
# convenience script for running the tests outside adt-run
-# usage: tests/using-intree tests/run-all
+# usage: tests/using-intree tests/run-all [tests/tests/*]
set -o pipefail
+while [ $# != 0 ]; do
+ case "$1" in
+ --) shift; break ;;
+ -*) echo >&2 "run-all: unknown option $1"; exit 20 ;;
+ *) break ;;
+ esac
+done
+
ncpus=$(nproc || echo 1)
jcpus=-j$(( ncpus * 134 / 100 ))