annotate libtests/run-tests.sh @ 770:c54bc2ffbf92 tip

update tags
author convert-repo
date Fri, 16 Dec 2011 11:34:01 +0000
parents 216b55457009
children
rev   line source
mas01ik@355 1 #! /bin/bash
mas01ik@355 2
mas01cr@498 3 # FIXME: work out how to do proper getopt in bash
mas01ik@355 4 if [ "$1" = "--full" ]; then
mas01ik@355 5 pattern="[0-9][0-9][0-9][0-9]*"
mas01ik@355 6 else
mas01ik@355 7 pattern="[0-8][0-9][0-9][0-9]*"
mas01ik@355 8 fi
mas01ik@355 9
mas01ik@355 10 for file in ${pattern}; do
mas01ik@355 11 if [ -d ${file} ]; then
mas01cr@373 12 if [ /bin/true ]; then
mas01cr@505 13 echo -n Running library test ${file}
mas01ik@355 14 if [ -f ${file}/short-description ]; then
mas01ik@355 15 awk '{ printf(" (%s)",$0) }' < ${file}/short-description
mas01ik@355 16 fi
mas01cr@498 17 if [ "$1" = "--valgrind" ]; then
mas01cr@498 18 echo -n \ under valgrind
mas01cr@498 19 fi
mas01ik@355 20 echo -n :
mas01cr@498 21 if [ "$1" = "--valgrind" ]; then
mas01cr@498 22 (cd ${file} && make -f ../libtest.mk >/dev/null 2>&1 && valgrind --leak-check=full --show-reachable=yes --error-exitcode=1 --tool=memcheck ./test1 > test.out 2> test.err)
mas01cr@498 23 else
mas01cr@498 24 (cd ${file} && make -f ../libtest.mk >/dev/null 2>&1 && ./test1 > test.out 2> test.err)
mas01cr@498 25 fi
mas01ik@355 26 EXIT_STATUS=$?
mas01ik@355 27 if [ ${EXIT_STATUS} -eq 14 ]; then
mas01ik@355 28 echo " n/a."
mas01ik@355 29 elif [ ${EXIT_STATUS} -ne 104 ]; then
mas01ik@355 30 echo " failed (exit status ${EXIT_STATUS})."
mas01ik@355 31 FAILED=true
mas01ik@355 32 else
mas01ik@355 33 echo " success."
mas01ik@355 34 fi
mas01ik@355 35 else
mas01ik@355 36 echo Skipping test ${file}
mas01ik@355 37 fi
mas01ik@355 38 fi
mas01ik@355 39 done
mas01ik@355 40
mas01ik@355 41 if [ -z "${FAILED}" ]; then
mas01ik@355 42 exit 0
mas01ik@355 43 else
mas01ik@355 44 exit 1
mas01ik@355 45 fi