chiark / gitweb /
Warning reporting: Add a test of the warning suppression system
[subdirmk.git] / tests / filter / check
index 09b4196e1d5d6539d41dc2e2b5e56a03fa0a5cff..10e63e249a8e2e15d1d5eec325f376d5fb80dde8 100755 (executable)
@@ -1,9 +1,28 @@
-#!/bin/sh
+#!/bin/bash
 set -e
+set -o pipefail
 
 cd tests/filter
-../../generate
+
+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
+
 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
+done
 
 echo ok.