run-tests 895 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/bin/sh
  2. set -e
  3. FAIL=0
  4. DIR=$(readlink -f $(dirname $0))
  5. if [ "$1" = "-q" ]; then
  6. export MSGLEVEL=2
  7. elif [ "$1" = "-v" ]; then
  8. export MSGLEVEL=4
  9. fi
  10. if expr match "$(readlink -f /proc/$$/fd/1)" '/dev/pts/[0-9]\+' > /dev/null; then
  11. CTEST='\033[1;32m'
  12. CHIGH='\033[1;35m'
  13. CRESET='\033[0m'
  14. elif [ -z "${MSGLEVEL}" ]; then
  15. export MSGLEVEL=2
  16. fi
  17. if [ -z "$MSGLEVEL" ]; then
  18. MSGLEVEL=5
  19. fi
  20. for testcase in $(run-parts --list $DIR | grep '/test-'); do
  21. if [ "$MSGLEVEL" -le 2 ]; then
  22. echo -n "${CTEST}Testcase ${CHIGH}$(basename ${testcase})${CRESET}: "
  23. else
  24. echo "${CTEST}Run Testcase ${CHIGH}$(basename ${testcase})${CRESET}"
  25. fi
  26. if ! ${testcase}; then
  27. FAIL=$((FAIL+1))
  28. echo "$(basename $testcase) ... FAIL"
  29. fi
  30. if [ "$MSGLEVEL" -le 2 ]; then
  31. echo
  32. fi
  33. done
  34. echo "failures: $FAIL"
  35. # ensure we don't overflow
  36. exit $((FAIL <= 255 ? FAIL : 255))