chiark / gitweb /
test suite: protocol-compat: Even more solid checks
[dgit.git] / tests / run-all
index e2e2a6f..3877c76 100755 (executable)
@@ -1,13 +1,21 @@
-#!/bin/sh
+#!/bin/bash
 set -e
 # convenience script for running the tests outside adt-run
 set -e
 # convenience script for running the tests outside adt-run
-if [ $# = 0 ]; then
-       set `run-parts --list tests/tests`
+# usage: tests/using-intree tests/run-all
+
+set -o pipefail
+
+set +e
+jcpus=`perl -MSys::CPU -we 'printf "-j%d\n", 1.34 * Sys::CPU::cpu_count()'`
+set -e
+
+if [ $# != 0 ]; then
+       set TESTSCRIPTS="$*"
 fi
 fi
-for f in $@; do
-       echo ==================================================
-       echo $f
-       $f
-       echo ==================================================
-done
-echo "ALL PASSED"
+
+mkdir -p tests/tmp
+
+(
+ set -x
+ exec make $jcpus -k -f tests/Makefile "$@"
+) 2>&1 |tee tests/tmp/run-all.log