X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=test%2FMakefile;h=de8df77745187ef9bf1b3ea4d58f1733e667e25a;hb=HEAD;hp=d894a02f2ddd7726021311a75a8ac9f4bb582c19;hpb=8e90f6abdb6a4fbc292f7f2185dc309e90e47840;p=super-star-trek.git diff --git a/test/Makefile b/test/Makefile index d894a02..de8df77 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,31 +1,44 @@ # Test-suite makefile for sst -all: regress - @echo "No diff output is good news." +all: + @$(MAKE) regress | ./tapview .SUFFIXES: .log .chk .log.chk: - ../sst.py -r $< >$@ 2>&1 + ../sst -r $< >$@ 2>&1 TESTLOADS := $(shell ls *.log | sed '/.log/s///') -buildregress: +rebuild: @for test in $(TESTLOADS); do \ if [ ! -f $${test}.tst ] ; \ - then \ + then \ echo "Remaking $${test}.chk"; \ - rm -f $${test}.chk && ../sst.py -r $${test}.log >$${test}.chk 2>&1; \ + rm -f $${test}.chk && ../sst -r $${test}.log >$${test}.chk 2>&1; \ 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;\ - ../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 -r "$${test}.log" | ./tapdiffer "$${legend}" "$${test}.chk"; \ fi \ done @rm -f /tmp/regress + +coverage: + @coverage erase + @for test in $(TESTLOADS); \ + do \ + if [ ! -f $${test}.tst ] ; \ + then \ + coverage run -a ../sst -r "$${test}.log" >/dev/null; \ + fi \ + done + @coverage html + +clean: + rm -f .coverage htmlcov/index.html