chiark / gitweb /
Add test for TCP responses which end up in several packets.
[adns.git] / regress / m1test
index e88933e7167a2165c99b3aec268ed3802c0da63e..82e94caba6cc2d0929084ad118c90395962f1a13 100755 (executable)
@@ -1,23 +1,35 @@
 #!/bin/sh
-# usage: m1test <name> <initfile> <queryargs>
 
 set -e
+
+if [ $# -lt 3 ]
+then
+       echo >&2 'usage: m1test <name> <initfile> [<initflags>] <queryargs>'
+       exit 1
+fi
+
 case="case-$1"; shift
 initfile="$1"; shift
+
+case "$1" in
+-*)    initflags="$1"; shift
+esac
+
 queryargs="$*"
 
 initstring="`cat init-$initfile.text`"
 
-echo "$initfile" >"$case.sys"
+echo $initfile $initflags >"$case.sys"
 echo "$queryargs" >>"$case.sys"
 
-echo running "hrecord /... $queryargs"
+echo running hrecord $initflags "/... $queryargs"
 set +e
-ADNS_TEST_OUT_FD=3 3>>"$case.sys" >"$case.stdout" 2>"$case.stderr" </dev/null \
- ./hrecord "/$initstring" $queryargs
+ADNS_TEST_OUT_FD=3 3>>"$case.sys" >"$case.out" 2>"$case.err" </dev/null \
+ ./hrecord $initflags "/$initstring" $queryargs
 rc=$?
 set -e
 
-egrep . -- "$case.stderr" "$case.stdout"
+echo "rc=$rc" >>$case.out
+
+egrep . -- "$case.err" "$case.out"
 echo "exit status: $rc"
-exit $rc