chiark / gitweb /
Syntax: expand &$... to ${....} rather than $(....)
[subdirmk.git] / tests / filter / check
index 2a5a8ee1d9be97df9dafe0531c6e7af7786e50d8..e54e4e29da94a50c02dce29fc0388f1fba543285 100755 (executable)
@@ -1,9 +1,32 @@
-#!/bin/sh
+#!/bin/bash
 set -e
+set -o pipefail
 
 cd tests/filter
-../../generate sub/dir
+
+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
+
 files=$(find -name \*.expected)
-for f in $files; do diff -u $f ${f%.expected}.tmp; done
+for f in $files; do
+       i=$f
+       o=$f.tmp
+       sed <$i >$o '
+               /^# doctests:/ {
+                       r '"${f%/*}/doctests.mk.part"'
+                       a
+               }
+       '
+       diff -u $f.tmp ${f%.expected}.tmp || ok=false
+done
+
+$ok
 
 echo ok.