alltests 808 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. MAXRC=0
  3. testOK=0
  4. testFAILED=0
  5. testSKIPPED=0
  6. testCOUNT=0
  7. export PRINTFPATTERN='%-31s %s %-70s'
  8. for test in t/*;
  9. do
  10. if test -x "$test" -a "$test" != "$0";
  11. then
  12. testCOUNT=$(($testCOUNT + 1))
  13. echo -n "[$testCOUNT] "
  14. $test
  15. RC=$?
  16. printf "RC:=(%d) (%s)\n\n" $RC $test
  17. if test "$RC" -eq "99";
  18. then
  19. testSKIPPED=$(($testSKIPPED + 1))
  20. elif test "$RC" -ne "0";
  21. then
  22. MAXRC="$RC"
  23. testFAILED=$(($testFAILED + 1))
  24. else
  25. testOK=$(($testOK + 1))
  26. fi
  27. fi
  28. done
  29. if test "$MAXRC" -eq "0";
  30. then
  31. echo "All tests : OK:$testOK/$testCOUNT FAILED:$testFAILED/$testCOUNT SKIPPED=$testSKIPPED/$testCOUNT [ OK ]"
  32. else
  33. echo "All tests : OK:$testOK/$testCOUNT FAILED:$testFAILED/$testCOUNT SKIPPED=$testSKIPPED/$testCOUNT [FAILED]"
  34. fi
  35. exit $MAXRC