chiark / gitweb /
changelog, etc.: Finalise 1.5.1.
[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,2014-2016  Ian Jackson
7 #    Copyright (C) 2014  Mark Wooding
8 #    Copyright (C) 1999-2000,2003,2006  Tony Finch
9 #    Copyright (C) 1991 Massachusetts Institute of Technology
10 #  (See the file INSTALL for full details.)
11 #  
12 #  This program is free software; you can redistribute it and/or modify
13 #  it under the terms of the GNU General Public License as published by
14 #  the Free Software Foundation; either version 3, or (at your option)
15 #  any later version.
16 #  
17 #  This program is distributed in the hope that it will be useful,
18 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
19 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 #  GNU General Public License for more details.
21 #  
22 #  You should have received a copy of the GNU General Public License
23 #  along with this program; if not, write to the Free Software Foundation.
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