chiark / gitweb /
+ * regress/output-<case>.report file contains more useful info.
[adns.git] / regress / m1test
1 #!/bin/sh
2 # usage: m1test <name> <initfile> [<initflags>] <queryargs>'
3 # test recording script
4 #
5 #  This file is
6 #    Copyright (C) 1998-2000 Ian Jackson <ian@davenant.greenend.org.uk>
7 #
8 #  It is part of adns, which is
9 #    Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
10 #    Copyright (C) 1999 Tony Finch <dot@dotat.at>
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 2, 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 #  Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 
25
26 set -e
27
28 if [ $# -lt 3 ]
29 then
30         echo >&2 \
31 'usage: m1test <name> <initfile> [<initflags>] [=<hrecord-command-args>]
32        <queryargs>'
33         exit 1
34 fi
35
36 case="case-$1"; shift
37 initfile="$1"; shift
38
39 hrecord="./hrecord"
40
41 case "$1" in
42 -*)     initflags="$1"; shift
43 esac
44
45 case "$1" in
46 =*)     hrecord="`echo \"$1\" | sed -e 's/^=//'`"; shift
47 esac
48
49 queryargs="$*"
50
51 initstring="`cat init-$initfile.text`"
52
53 echo $initfile $initflags >"$case.sys"
54 echo "$queryargs" >>"$case.sys"
55
56 EF_DISABLE_BANNER=1
57 export EF_DISABLE_BANNER
58
59 echo running hrecord $initflags "/... $queryargs"
60 set +e
61 ADNS_TEST_OUT_FD=3 3>>"$case.sys" >"$case.out" 2>"$case.err" </dev/null \
62  $hrecord $initflags "/$initstring" $queryargs
63 rc=$?
64 set -e
65
66 echo "rc=$rc" >>$case.out
67
68 egrep . -- "$case.err" "$case.out"
69 echo "exit status: $rc"