Factor out most of illformed that doesn't cause advent430 problems.
[open-adventure.git] / tests / tapdiffer
index b529a3931fb55fbf9d642b70103883658aef78c6..f48bcc336ed5437e687f75364adb8ccb12ff4a1d 100755 (executable)
@@ -8,15 +8,22 @@
 # A nonempty diff is shipped as a TAP YAML block following "not ok" 
 # unless QUIET=1 in the environment.
 #
+if [ "$1" = "-w" ]
+then
+    diffopts=-ubZ
+    shift
+else
+    diffopts=-u
+fi
+
 legend=$1
 checkfile=$2
 
 trap 'rm /tmp/tapdiff$$' EXIT HUP INT QUIT TERM
 
-if diff --text -u ${checkfile} - >/tmp/tapdiff$$
+if diff --text "${diffopts}" ${checkfile} - >/tmp/tapdiff$$
 then
        echo "ok - ${legend}"
-       exit 0
 else
        echo "not ok - ${checkfile}: ${legend}"
        if [ ! "${QUIET}" = 1 ]
@@ -25,7 +32,6 @@ else
                sed </tmp/tapdiff$$ -e 's/^/  /'
                echo "  ..."
        fi
-       exit 1
 fi
 
 # end