X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=regress%2Fr1test;h=b2549e732378d3116c1785042c34f3c9b058dbfa;hp=4315bf8a77699f65b51400b6bf63f2e6101d2745;hb=b582ca0f999ffd51e26c5543d2023ea137af3bec;hpb=4fad263db72b6e675e82c84b56d81333240a7475 diff --git a/regress/r1test b/regress/r1test index 4315bf8..b2549e7 100755 --- a/regress/r1test +++ b/regress/r1test @@ -1,34 +1,79 @@ #!/bin/sh # usage: r1test +# test execution script, for running one test +# +# This file is part of adns, which is +# Copyright (C) 1997-2000,2003,2006 Ian Jackson +# Copyright (C) 1999-2000,2003,2006 Tony Finch +# Copyright (C) 1991 Massachusetts Institute of Technology +# (See the file INSTALL for full details.) +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. set -e +: ${srcdir=.} mrc=1 trap 'exit $mrc' 0 casename="$1" -case="case-$casename" +case="$srcdir/case-$casename" ocase="output-$casename" -exec <"$case.sys" -read initfile initflags -read queryargs +exec 4<"$case.sys" +read <&4 program initfile initflags +read <&4 queryargs -initstring="`cat init-$initfile.text`" +initstring="`cat $srcdir/init-$initfile.text`" +xinitflagsf=$srcdir/$program-xinitflags.text +if test -f $xinitflagsf +then + initflags="$initflags `cat $xinitflagsf`"; +else + initflags="$initflags /" +fi rm -f $ocase.* EF_DISABLE_BANNER=1 export EF_DISABLE_BANNER +if test -f "$case.in" +then + exec <"$case.in" +else + exec >"$ocase.report" >"$ocase.out" 2>"$ocase.err" \ - ./hplayback $initflags "/$initstring" $queryargs +ADNS_TEST_REPORT_FD=3 ADNS_TEST_IN_FD=4 \ + 3>>"$ocase.report" 4<&4 >"$ocase.out" 2>"$ocase.err" \ + $ADNS_TEST_DEBUG $playback $initflags"$initstring" $queryargs rc=$? set -e if [ "$rc" = 5 ] then - echo -n "SKIPPED-$casename " + printf "SKIPPED-$casename " mrc=5 exit fi @@ -46,7 +91,7 @@ do fi done -cat >"$ocase.leftover" +cat <&4 >"$ocase.leftover" if egrep . /dev/null "$ocase.leftover" then failwhy="$failwhy EXITED EARLY" @@ -60,5 +105,5 @@ then exit fi -echo -n "$casename " +printf "$casename " mrc=0