From 8cd418cff0eae8d2190a165202f1efb9f0cb9046 Mon Sep 17 00:00:00 2001 From: giraffedata Date: Sat, 2 Dec 2017 03:00:57 +0000 Subject: Make tests work on Mac OS git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@3096 9d0c8265-081b-0410-96cb-a4ca84ce46f8 --- test/Execute-Tests | 56 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 32 insertions(+), 24 deletions(-) (limited to 'test/Execute-Tests') diff --git a/test/Execute-Tests b/test/Execute-Tests index bf8ecb56..e69c84e7 100755 --- a/test/Execute-Tests +++ b/test/Execute-Tests @@ -237,30 +237,38 @@ if [ $VALGRIND_TESTS = "on" ] fi # Execute a single test and test its result. -# But first see if the target programs and requirements are in place. - -${srcdir}/Available-Testprog \ - `sed -n -e '/^# This script tests: /s/# This script tests: //p' \ - -e '/^# Also requires: /s/^# Also requires: //p' \ - -e '/^$/q' ${srcdir}/$tname | tr '\n' ' '` -case $? in -0) - PATH=${testpath} $vg_command ${srcdir}/$tname > ${tname%.test}.out; - let retval=$? - case $retval in - 0) cmp -s ${tname%.test}.out ${srcdir}/${tname%.test}.ok ; - if [ $? -eq 0 ] - then let result=0; rm ${tname%.test}.out ; - else let result=1; - grep "^##" ${srcdir}/$tname # Print failure message. - fi ;; - 80) let result=4 ;; - *) let result=1 ;; - esac ;; - -1) let result=4 ;; -*) let result=1 ;; -esac +# But first check if the .ok file exists. (Some .ok files are +# dynamically created.) Then see if target programs and requirements +# are in place. If either of these conditions are not met, do +# not execute the test and report "Not Testable". + +if [ ! -s ${srcdir}/${tname%.test}.ok ] +then + let result=4; +else + ${srcdir}/Available-Testprog \ + `sed -n -e '/^# This script tests: /s/# This script tests: //p' \ + -e '/^# Also requires: /s/^# Also requires: //p' \ + -e '/^$/q' ${srcdir}/$tname | tr '\n' ' '` + case $? in + 0) + PATH=${testpath} $vg_command ${srcdir}/$tname > ${tname%.test}.out; + let retval=$? + case $retval in + 0) cmp -s ${tname%.test}.out ${srcdir}/${tname%.test}.ok ; + if [ $? -eq 0 ] + then let result=0; rm ${tname%.test}.out ; + else let result=1; + grep "^##" ${srcdir}/$tname # Print failure message. + fi ;; + 80) let result=4 ;; + *) let result=1 ;; + esac ;; + + 1) let result=4 ;; + *) let result=1 ;; + esac +fi # Report whether a single test succeeded or failed. # Increment counters. -- cgit 1.4.1