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,2020  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
25set -e
26
27: ${srcdir=.}
28failed=''
29passed=''
30skipped=''
31
32for f in $srcdir/case-*.sys
33do
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
47done
48
49if [ "x$failed" = x ]
50then
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
61fi
62
63echo >&2 "
64AT LEAST ONE TEST FAILED
65passed tests:${passed:- NONE}
66skipped tests:${skipped:- NONE}
67failed tests:$failed
68"
69
70exit 1
71