chiark / gitweb /
Syntax: expand &$... to ${....} rather than $(....)
[subdirmk.git] / tests / filter / check
index 18ead3eb444a0823a706cd1ef99910238e402b26..e54e4e29da94a50c02dce29fc0388f1fba543285 100755 (executable)
@@ -1,20 +1,32 @@
-#!/bin/sh
+#!/bin/bash
 set -e
+set -o pipefail
 
 cd tests/filter
 
-expand <../../README | ./extract-doctest . >/dev/null
+expand <../../README | ./extract-doctests . >/dev/null
+
+set +e
+../../generate sub/dir 2>stderr.tmp
+rc=$?
+set -e
+if [ $rc != 0 ]; then cat stderr.tmp; exit 1; fi
+
+ok=true
 
-../../generate sub/dir
 files=$(find -name \*.expected)
 for f in $files; do
-       sed <$f >$f.tmp '
+       i=$f
+       o=$f.tmp
+       sed <$i >$o '
                /^# doctests:/ {
-                       r '"${f%/*}/doctest.mk.part"'
+                       r '"${f%/*}/doctests.mk.part"'
                        a
                }
        '
-       diff -u $f.tmp ${f%.expected}.tmp
+       diff -u $f.tmp ${f%.expected}.tmp || ok=false
 done
 
+$ok
+
 echo ok.