1.1 --- a/test_all.sh Mon Dec 05 17:47:56 2016 +0100
1.2 +++ b/test_all.sh Mon Dec 05 18:30:55 2016 +0100
1.3 @@ -23,7 +23,22 @@
1.4
1.5 # Main program.
1.6
1.7 +OPTION=$1
1.8 +
1.9 +# Make any required results directory.
1.10 +
1.11 +if [ "$OPTION" = '--build' ]; then
1.12 + if [ ! -e "_results" ]; then
1.13 + mkdir "_results"
1.14 + else
1.15 + rm "_results/"*
1.16 + fi
1.17 +fi
1.18 +
1.19 +# Perform each test.
1.20 +
1.21 for FILENAME in tests/* ; do
1.22 + TESTNAME=`basename "$FILENAME" .py`
1.23
1.24 # Detect tests in their own subdirectories.
1.25
1.26 @@ -68,5 +83,23 @@
1.27 echo " (warnings)..." 1>&2
1.28 if ! check_type_warnings ; then exit 1 ; fi
1.29
1.30 + # Build and run if appropriate.
1.31 +
1.32 + if [ "$OPTION" = '--build' ]; then
1.33 + BUILDLOG="_results/$TESTNAME.build"
1.34 + OUTLOG="_results/$TESTNAME.out"
1.35 +
1.36 + echo " (build)..." 1>&2
1.37 + if ! make -C _generated clean > "$BUILDLOG" || \
1.38 + ! make -C _generated > "$BUILDLOG" ; then
1.39 + exit 1
1.40 + fi
1.41 +
1.42 + echo " (run)..." 1>&2
1.43 + if ! "_generated/main" > "$OUTLOG" ; then
1.44 + exit 1
1.45 + fi
1.46 + fi
1.47 +
1.48 echo 1>&2
1.49 done