]> The Tcpdump Group git mirrors - tcpdump/blob - tests/TESTrun.sh
From Max Laier: check whether the system has <net/pfvar.h> and:
[tcpdump] / tests / TESTrun.sh
1 #!/bin/sh
2
3 mkdir -p NEW
4 mkdir -p DIFF
5 passed=0
6 failed=0
7
8 # first run any specific tests.
9 for i in *.sh
10 do
11 case $i in TEST*.sh) continue;; esac
12
13 if sh ./$i >DIFF/$i.result
14 then
15 echo $i: passed.
16 passed=$(($passed + 1))
17 else
18 echo $i: failed.
19 failed=$(($failed + 1))
20 fi
21 done
22
23 echo $passed >.passed
24 echo $failed >.failed
25
26 # now run typical tests
27 cat TESTLIST | while read name input output options
28 do
29 case $name in
30 \#*) continue;;
31 '') continue;;
32 esac
33
34 if ./TESTonce $name $input $output "$options"
35 then
36 echo $name: passed.
37 passed=$(($passed + 1))
38 echo $passed >.passed
39 else
40 echo $name: failed.
41 failed=$(($failed + 1))
42 echo $failed >.failed
43 fi
44 done
45
46 # I hate shells with their stupid, useless subshells.
47 passed=`cat .passed`
48 failed=`cat .failed`
49
50 # exit with number of failing tests.
51 echo
52 echo
53 printf "%4u tests failed\n" $failed
54 printf "%4u tests passed\n" $passed
55 echo
56 echo
57 exit $failed
58
59
60
61