#!/bin/bash -e
-if ! test -d ../build ; then
- echo "Expected build directory in ../build, but couldn't find it." >&2
- exit 1
+BUILD_DIR="$($(dirname "$0")/../tools/find-build-dir.sh)"
+if [ $# -gt 0 ]; then
+ args="$@"
+else
+ args="clean setup run clean-again"
fi
-ninja -C ../build
+ninja -C "$BUILD_DIR"
declare -A results
-RESULT=0
+COUNT=0
FAILURES=0
+cd "$(dirname "$0")"
for TEST in TEST-??-* ; do
- echo -e "\n--x-- Starting $TEST --x--"
+ COUNT=$(($COUNT+1))
+
+ echo -e "\n--x-- Running $TEST --x--"
set +e
- make -C "$TEST" BUILD_DIR=$(pwd)/../build clean setup run
+ ( set -x ; make -C "$TEST" "BUILD_DIR=$BUILD_DIR" $args )
RESULT=$?
set -e
echo "--x-- Result of $TEST: $RESULT --x--"
done | sort
if [ "$FAILURES" -eq 0 ] ; then
- echo -e "\nALL PASSED"
+ echo -e "\nALL $COUNT TESTS PASSED"
else
- echo -e "\nTOTAL FAILURES: $FAILURES"
+ echo -e "\nTOTAL FAILURES: $FAILURES OF $COUNT"
fi
exit "$FAILURES"