]> CyberLeo.Net >> Repos - FreeBSD/releng/8.1.git/blob - tools/regression/bin/sh/regress.sh
Copy stable/8 to releng/8.1 in preparation for 8.1-RC1.
[FreeBSD/releng/8.1.git] / tools / regression / bin / sh / regress.sh
1 # $FreeBSD$
2
3 COUNTER=1
4
5 do_test() {
6         local c
7         c=${COUNTER}
8         COUNTER=$((COUNTER+1))
9         sh $1 > tmp.stdout 2> tmp.stderr
10         if [ $? -ne $2 ]; then
11                 echo "not ok ${c} - ${1} # wrong exit status"
12                 rm tmp.stdout tmp.stderr
13                 return
14         fi
15         for i in stdout stderr; do
16                 if [ -f ${1}.${i} ]; then
17                         if ! cmp -s tmp.${i} ${1}.${i}; then
18                                 echo "not ok ${c} - ${1} # wrong output on ${i}"
19                                 rm tmp.stdout tmp.stderr
20                                 return
21                         fi
22                 elif [ -s tmp.${i} ]; then
23                         echo "not ok ${c} - ${1} # wrong output on ${i}"
24                         rm tmp.stdout tmp.stderr
25                         return
26                 fi
27         done
28         echo "ok ${c} - ${1}"
29         rm tmp.stdout tmp.stderr
30 }
31
32 TESTS=$(find -Es . -regex ".*\.[0-9]+")
33 printf "1..%d\n" $(echo ${TESTS} | wc -w)
34
35 for i in ${TESTS} ; do
36         do_test ${i} ${i##*.}
37 done