regress.sh revision 267654
1156136Sdavidxu# $FreeBSD: releng/9.3/tools/regression/bin/sh/regress.sh 218851 2011-02-19 13:23:13Z jilles $ 2156136Sdavidxu 3156136Sdavidxuif [ -z "${SH}" ]; then 4156136Sdavidxu echo '${SH} is not set, please correct and re-run.' 5156136Sdavidxu exit 1 6156136Sdavidxufi 7156136Sdavidxuexport SH=${SH} 8156136Sdavidxu 9156136SdavidxuCOUNTER=1 10156136Sdavidxu 11156136Sdavidxudo_test() { 12156136Sdavidxu c=${COUNTER} 13156136Sdavidxu COUNTER=$((COUNTER+1)) 14156136Sdavidxu ${SH} $1 > tmp.stdout 2> tmp.stderr 15156136Sdavidxu if [ $? -ne $2 ]; then 16156136Sdavidxu echo "not ok ${c} - ${1} # wrong exit status" 17156136Sdavidxu rm tmp.stdout tmp.stderr 18156136Sdavidxu return 19156136Sdavidxu fi 20156136Sdavidxu for i in stdout stderr; do 21156136Sdavidxu if [ -f ${1}.${i} ]; then 22156136Sdavidxu if ! cmp -s tmp.${i} ${1}.${i}; then 23156136Sdavidxu echo "not ok ${c} - ${1} # wrong output on ${i}" 24156136Sdavidxu rm tmp.stdout tmp.stderr 25156136Sdavidxu return 26156136Sdavidxu fi 27156136Sdavidxu elif [ -s tmp.${i} ]; then 28156136Sdavidxu echo "not ok ${c} - ${1} # wrong output on ${i}" 29156136Sdavidxu rm tmp.stdout tmp.stderr 30156136Sdavidxu return 31156136Sdavidxu fi 32156136Sdavidxu done 33156136Sdavidxu echo "ok ${c} - ${1}" 34156267Sdavidxu rm tmp.stdout tmp.stderr 35156136Sdavidxu} 36156136Sdavidxu 37252412SedTESTS=$(find -Es . -regex ".*\.[0-9]+") 38156136Sdavidxuprintf "1..%d\n" $(echo ${TESTS} | wc -w) 39156136Sdavidxu 40156136Sdavidxufor i in ${TESTS} ; do 41156136Sdavidxu do_test ${i} ${i##*.} 42156136Sdavidxudone 43156136Sdavidxu