e3324da1 |
1 | #!/bin/sh |
2 | # usage: r1test <testcasename> |
3 | |
4 | set -e |
a4443336 |
5 | casename="$1" |
6 | case="case-$casename" |
3c5796f7 |
7 | ocase="output-$casename" |
e3324da1 |
8 | |
e9d74277 |
9 | exec <"$case.sys" |
e3324da1 |
10 | read initfile |
11 | read queryargs |
e9d74277 |
12 | |
13 | initstring="`cat init-$initfile.text`" |
14 | |
3c5796f7 |
15 | rm -f $ocase.* |
16 | |
e9d74277 |
17 | set +e |
3c5796f7 |
18 | ADNS_TEST_REPORT_FD=3 3>>"$ocase.report" >"$ocase.out" 2>"$ocase.err" \ |
e9d74277 |
19 | ./hplayback "/$initstring" $queryargs |
20 | rc=$? |
21 | set -e |
22 | |
23 | if test $rc != 0 |
24 | then |
3c5796f7 |
25 | egrep . -- "$ocase.report" "$ocase.out" "$ocase.err" |
e9d74277 |
26 | echo >&2 "FAILED $case - EXIT STATUS $rc" |
27 | exit 2 |
28 | fi |
29 | |
3c5796f7 |
30 | for part in out err |
e9d74277 |
31 | do |
3c5796f7 |
32 | if diff -- "$case.$part" "$ocase.$part" |
e9d74277 |
33 | then |
34 | : |
35 | else |
36 | echo >&2 "FAILED $case - WRONG OUTPUT" |
37 | exit 2 |
38 | fi |
39 | done |
40 | |
a4443336 |
41 | echo -n "$casename " |
e9d74277 |
42 | |
43 | exit 0 |