X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=test%2FMakefile;h=a0d91268843cbdeed72418fbd92af9dcda24dd6b;hb=08da62875d9b030f0a8d98a702ee5b242f984477;hp=91983cec35efe09436cf04851d06add6681ea079;hpb=b9262a12fb1dc8dc7d4772fd72c88e79e582d1c6;p=super-star-trek.git diff --git a/test/Makefile b/test/Makefile index 91983ce..a0d9126 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,8 +1,24 @@ # Test-suite makefile for sst -PYTHON=python2 +PYTHON=python -all: regress +# The tests output TAP (Test Anything Proocol) +# If you have either of these TAP viwers installed, +# S good ing will happen. +TAPVIEWER=cat +ifeq (,$(command -v tapview)) + TAPVIEWER=tapview +else + ifeq (,$(command -v tappy)) + TAPVIEWER=tappy + endif +endif + +all: + @echo "With Python 2:" + @$(MAKE) -e PYTHON=python2 regress | $(TAPVIEWER) + @echo "With Python 3:" + @$(MAKE) -e PYTHON=python3 regress | $(TAPVIEWER) @echo "No diff output is good news." .SUFFIXES: .log .chk @@ -20,14 +36,13 @@ buildregress: fi \ done regress: + echo "1..$$(ls *.log | wc -l)" @for test in $(TESTLOADS); \ do \ if [ ! -f $${test}.tst ] ; \ then \ - (if echo -n "$${test}: " >&2; grep 'Test' $${test}.log >&2;\ - $(PYTHON) ../sst.py -r $${test}.log >/tmp/regress 2>&1; \ - then diff -u $${test}.chk /tmp/regress; \ - else echo "*** Nonzero return status on $${test}!"; exit 1; fi;) \ + legend=$$(sed -n -e '/# Test/s//Test/p' <$${test}.log); \ + ../sst.py -r "$${test}.log" | ./tapdiffer "$${legend}" "$${test}.chk"; \ fi \ done @rm -f /tmp/regress