diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2016-04-19 14:10:13 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2016-04-19 14:10:13 +0200 |
| commit | 2e102a11afe9b256f0f9cf5391faf445fd40430a (patch) | |
| tree | fcf8f6f4e2b7832bed9c380bf49bcc491ca06292 /vis/test.sh | |
Initial import of test branch from vis repository
Diffstat (limited to 'vis/test.sh')
| -rwxr-xr-x | vis/test.sh | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/vis/test.sh b/vis/test.sh new file mode 100755 index 0000000..a52fe0f --- /dev/null +++ b/vis/test.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +[ -z "$VIS" ] && VIS="../../vis" + +TESTS=$1 +[ -z "$TESTS" ] && TESTS=$(find . -name '*.keys' | sed 's/\.keys$//g') + +TESTS_RUN=0 +TESTS_OK=0 + +$VIS -v + +for t in $TESTS; do + ERR="$t.err" + OUT="$t.out" + REF="$t.ref" + printf "Running test %s ... " "$t" + rm -f "$OUT" "$ERR" + { cat "$t.keys"; printf "<Escape>:wq! $OUT<Enter>"; } | cpp -P | ../util/keys | $VIS "$t.in" 2> /dev/null + if [ -e "$OUT" ]; then + if cmp -s "$REF" "$OUT"; then + printf "OK\n" + TESTS_OK=$((TESTS_OK+1)) + else + printf "FAIL\n" + diff -u "$REF" "$OUT" > "$ERR" + fi + TESTS_RUN=$((TESTS_RUN+1)) + fi +done + +printf "Tests ok %d/%d\n" $TESTS_OK $TESTS_RUN + +# set exit status +[ $TESTS_OK -eq $TESTS_RUN ] |
