about summary refs log tree commit diff
path: root/test/Execute-Tests
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2016-12-25 17:36:41 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2016-12-25 17:36:41 +0000
commit9df60b4c472359d6d1a92fd62dd74feb002f14fc (patch)
tree9ea46580cac4aa19cbb07881b98d52200f5b9c36 /test/Execute-Tests
parentba0c660b33b95c870f275466af5e6342759e621a (diff)
downloadnetpbm-mirror-9df60b4c472359d6d1a92fd62dd74feb002f14fc.tar.gz
netpbm-mirror-9df60b4c472359d6d1a92fd62dd74feb002f14fc.tar.xz
netpbm-mirror-9df60b4c472359d6d1a92fd62dd74feb002f14fc.zip
Copy Development as new Advanced
git-svn-id: http://svn.code.sf.net/p/netpbm/code/advanced@2861 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'test/Execute-Tests')
-rwxr-xr-xtest/Execute-Tests35
1 files changed, 23 insertions, 12 deletions
diff --git a/test/Execute-Tests b/test/Execute-Tests
index 78091e6b..39d6a5d1 100755
--- a/test/Execute-Tests
+++ b/test/Execute-Tests
@@ -236,18 +236,29 @@ if [ $VALGRIND_TESTS = "on" ]
 fi
 
 # Execute a single test and test its result.
-
-PATH=${testpath} $vg_command ${srcdir}/$tname > ${tname%.test}.out;
-let result=$?
-case $result 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 ;;
+# 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
 
 # Report whether a single test succeeded or failed.