X-Git-Url: https://jxself.org/git/?p=super-star-trek.git;a=blobdiff_plain;f=test%2FMakefile;h=7b21af033e4783e0c9d3922a806387428b66a887;hp=279971b4da60fe61dbdede9f415fa8b40c2f2436;hb=f606175c8feb56e1858ebdfd7873a261e0a2163a;hpb=d07b7b4c26776011f703a7a4ed5ae792bfc46bea diff --git a/test/Makefile b/test/Makefile index 279971b..7b21af0 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,8 +1,24 @@ # Test-suite makefile for sst -PYTHON=python +PYTHON=python3 -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