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" |
2d5cce62 |
10 | read initfile initflags |
e3324da1 |
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" \ |
2d5cce62 |
19 | ./hplayback $initflags "/$initstring" $queryargs |
e9d74277 |
20 | rc=$? |
21 | set -e |
22 | |
7ca1d685 |
23 | echo "rc=$rc" >>$ocase.out |
e9d74277 |
24 | |
09a06b84 |
25 | failed=false |
26 | for part in err out |
e9d74277 |
27 | do |
7ca1d685 |
28 | if diff -u -- "$case.$part" "$ocase.$part" |
e9d74277 |
29 | then |
30 | : |
31 | else |
09a06b84 |
32 | failed=true |
e9d74277 |
33 | fi |
34 | done |
35 | |
09a06b84 |
36 | if $failed |
37 | then |
38 | echo >&2 "FAILED $case - WRONG OUTPUT - lines of syscall remaining `wc -l`" |
39 | exit 2 |
40 | fi |
41 | |
a4443336 |
42 | echo -n "$casename " |
e9d74277 |
43 | |
44 | exit 0 |