X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2Fscripts%2Fdo_tests.sh;h=a195b9cf0ee4ba816e29bbe917e3d2101db7c8de;hb=b9af9f1c0de6a1735b492f5c793a87a8fce218cc;hp=737ea7c5efd42de28d6359f0126f56ba96ee5068;hpb=f81860fd2d2c23d53b58873a1d0e3feaa0247b92;p=helm.git diff --git a/helm/matita/scripts/do_tests.sh b/helm/matita/scripts/do_tests.sh index 737ea7c5e..a195b9cf0 100755 --- a/helm/matita/scripts/do_tests.sh +++ b/helm/matita/scripts/do_tests.sh @@ -8,17 +8,27 @@ if [ "$1" = "-no-color" ]; then OK="OK" FAIL="FAIL" fi +if [ "$1" = "-twice" ]; then + shift + TWICE=1 +fi COMPILER=$1 shift +CLEANER=$1 +shift LOGFILE=$1 shift TODO="$@" -if [ -z "$COMPILER" -o -z "$LOGFILE" -o -z "$TODO" ]; then +if [ -z "$COMPILER" -o -z "$CLEANER" -o -z "$LOGFILE" -o -z "$TODO" ]; then echo echo "usage: " - echo " do_tests.sh [-no-color] ./compiler logfile tests.ma ..." + echo " do_tests.sh [-no-color] [-twice] ./compiler ./cleaner logfile tests.ma ..." + echo + echo "options: " + echo " -no-color Do not use vt100 colors" + echo " -twice Run each test twice but show only the second run times" echo echo "The value of the DO_TESTS_EXTRA evironment variable" echo "will be appended to each line." @@ -28,13 +38,20 @@ fi TMP=.__temp.txt for T in $TODO; do - echo -en "$COMPILER\t$T\t" - /usr/bin/time --quiet -o $TMP -f "%E\t%U\t%S" $COMPILER $T >> $LOGFILE 2>&1 - if [ $? = 0 ]; then - echo -e "$OK\t`cat $TMP`\t$DO_TESTS_EXTRA" + printf "$COMPILER\t%-30s " $T + if [ "$TWICE" = "1" ]; then + $CLEANER $T 1>/dev/null 2>/dev/null + $COMPILER $T 1>/dev/null 2>/dev/null + fi + $CLEANER $T 1>/dev/null 2>/dev/null + /usr/bin/time --quiet -o $TMP -f "%E %U %S" $COMPILER $T >> $LOGFILE 2>&1 + RC=$?; + if [ $RC = 0 ]; then + printf "$OK\t`cat $TMP`\t$DO_TESTS_EXTRA\n" + rm $TMP else - echo -e "$FAIL\t`cat $TMP`\t$DO_TESTS_EXTRA" + printf "$FAIL\t`cat $TMP`\t$DO_TESTS_EXTRA\n"; + rm $TMP + exit $RC fi done - -rm $TMP