From: Eric S. Raymond Date: Tue, 21 Mar 2023 18:07:04 +0000 (-0400) Subject: Move in the direction of being able to do ancient regression tests. X-Git-Tag: 1.15~45 X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=commitdiff_plain;h=b044e9ab422ef7501c5ce98ec39eb89e2f142c5e Move in the direction of being able to do ancient regression tests. --- diff --git a/tests/Makefile b/tests/Makefile index 90120ef..347b0f9 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -34,7 +34,7 @@ check: savecheck .SUFFIXES: .chk clean: - rm -fr *~ *.adv scratch.tmp *.ochk + rm -fr *~ *.adv scratch.tmp *.ochk advent430 adventure.data # Show summary lines for all tests. testlist: @@ -124,12 +124,20 @@ tap: count $(TEST_TARGETS) count: @echo 1..$(words $(TEST_TARGETS)) -# The following machinery tests the gane against a binary made from the advent430 branch -# The diff file produced has new spellings in it. - -ancient: - for x in *.log; do stem=$${x%.log}; echo $${stem}; ./advent430 <$${stem}.log | ./oldfilter >$${stem}.ochk; done - for x in *.log; do stem=$${x%.log}; diff -u $${stem}.chk $${stem}.log; done - rm *.ochk +# The following machinery tests the gane against a binary made from +# the advent430 branch To use it, switch to that branch, build the +# binary, sand run it once to generate adventure.data, then switch +# back to master leaving advent430 and adventure.data in place (make +# clean does not remove them). +# +# The diff file produced has corrected spellings in it. That's what oldfilter +# is for, to massage out the orioginal dpellings and avoid noise diffs. +# Diffs in amount of whitespace and trailing whitespace are ignored + +ancient: $(SGAMES) + @if [ -f ../advent430 ]; then cp ../advent430 ../adventure.data .; else echo "advent430 nonexistent"; exit 1; fi + @for x in *.log; do stem=$${x%.log}; echo $${stem}; ./advent430 <$${stem}.log | ./oldfilter >$${stem}.ochk; done + @for x in *.log; do stem=$${x%.log}; ./newfilter <$${stem}.chk | diff -ubZ $${stem}.ochk -; done + @rm *.ochk advent430 adventure.data # end diff --git a/tests/newfilter b/tests/newfilter new file mode 100755 index 0000000..dca9f05 --- /dev/null +++ b/tests/newfilter @@ -0,0 +1,8 @@ +#!/bin/sh +# +# Filter the output from Open Adventure versions to make it compatible with +# the filtered versions of logs made from advent430. +sed \ + -e '/bridge now spans the fissure/s//bridge spans the fissure/' \ + +# end