6 # make it absolute for later use.
8 srcdir
=`cd $srcdir && pwd`
10 # this should be run from the compiled build directory,
11 # with srcdir= set to wherever the source code is.
12 # not from the tests directory.
13 echo RUNNING from
${srcdir}
15 passedfile
=`pwd`/tests
/.passed
16 failedfile
=`pwd`/tests
/.failed
17 failureoutput
=`pwd`/tests
/failure-outputs.txt
20 cat /dev
/null
> ${failureoutput}
24 for i
in ${srcdir}/tests
/*.sh
27 ${srcdir}/tests
/TEST
*.sh
) continue;;
28 ${srcdir}/tests
/\
*.sh
) continue;;
33 passed
=`cat ${passedfile}`
34 failed
=`cat ${failedfile}`
40 cat ${srcdir}/tests
/TESTLIST |
while read name input output options
47 [ "$only" != "" -a "$name" != "$only" ] && continue
50 # I hate shells with their stupid, useless subshells.
51 passed
=`cat ${passedfile}`
52 failed
=`cat ${failedfile}`
54 if ${srcdir}/tests/TESTonce $name ${srcdir}/tests/$input ${srcdir}/tests
/$output "$options"
56 passed
=`expr $passed + 1`
57 echo $passed >${passedfile}
59 failed
=`expr $failed + 1`
60 echo $failed >${failedfile}
62 if [ -d tests
/COREFILES
]; then
63 if [ -f core
]; then mv core
tests
/COREFILES
/$name.core
; fi
65 [ "$only" != "" -a "$name" = "$only" ] && break
67 # I hate shells with their stupid, useless subshells.
68 passed
=`cat ${passedfile}`
69 failed
=`cat ${failedfile}`
74 echo $passed >${passedfile}
75 echo $failed >${failedfile}
84 echo "Usage: $0 [test_name]"
88 # exit with number of failing tests.
89 echo '------------------------------------------------'
90 printf "%4u tests failed\n" $failed
91 printf "%4u tests passed\n" $passed
93 if [ -z "$SKIPPASSED" ]; then