chiark / gitweb /
Reentrancy: Avoid reentrant callbacks
[adns.git] / regress / checkall
1 #!/bin/sh
2 # usage: checkall
3 # runs all test cases
4 #
5 #  This file is part of adns, which is
6 #    Copyright (C) 1997-2000,2003,2006  Ian Jackson
7 #    Copyright (C) 1999-2000,2003,2006  Tony Finch
8 #    Copyright (C) 1991 Massachusetts Institute of Technology
9 #  (See the file INSTALL for full details.)
10 #  
11 #  This program is free software; you can redistribute it and/or modify
12 #  it under the terms of the GNU General Public License as published by
13 #  the Free Software Foundation; either version 2, or (at your option)
14 #  any later version.
15 #  
16 #  This program is distributed in the hope that it will be useful,
17 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
18 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 #  GNU General Public License for more details.
20 #  
21 #  You should have received a copy of the GNU General Public License
22 #  along with this program; if not, write to the Free Software Foundation,
23 #  Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 
24
25 set -e
26
27 : ${srcdir=.}
28 failed=''
29 passed=''
30 skipped=''
31
32 for f in $srcdir/case-*.sys
33 do
34         case="`echo \"$f\" | sed -e 's:^.*/::; s/^case-//; s/\.sys$//'`"
35         set +e
36         $srcdir/r1test $case
37         rc=$?
38         set -e
39         case $rc in
40         0)      passed="$passed $case" ;;
41         5)      skipped="$skipped $case" ;;
42         *)      echo
43                 failed="$failed $case"
44                 echo
45                 ;;
46         esac
47 done
48
49 if [ "x$failed" = x ]
50 then
51         echo "
52 "
53         if [ "x$skipped" = x ]
54         then
55                 echo "all tests passed."
56         else
57                 echo "all applicable tests passed (skipped:$skipped)"
58         fi
59         echo
60         exit 0
61 fi
62
63 echo >&2 "
64 AT LEAST ONE TEST FAILED
65 passed tests:${passed:- NONE}
66 skipped tests:${skipped:- NONE}
67 failed tests:$failed
68 "
69
70 exit 1