27 lines
750 B
Bash
27 lines
750 B
Bash
|
#!/bin/sh
|
||
|
# Test is all examples in the .md files are working
|
||
|
if [ $# -ne 1 ]; then
|
||
|
echo "Usage: test.sh [lean-executable-path]"
|
||
|
exit 1
|
||
|
fi
|
||
|
ulimit -s unlimited
|
||
|
LEAN=$1
|
||
|
NUM_ERRORS=0
|
||
|
for f in `ls *.md`; do
|
||
|
echo "-- testing $f"
|
||
|
awk 'BEGIN{ in_block = 0 } !/```/{ if (in_block == 1) print $0; else print "" } /```/ && !/```lean/{ in_block = 0; print "" } /```lean/{ in_block = 1; print "" }' $f > $f.lean
|
||
|
if $LEAN $f.lean > $f.produced.out; then
|
||
|
echo "-- worked"
|
||
|
else
|
||
|
echo "ERROR executing $f.lean, produced output is at $f.produced.out"
|
||
|
NUM_ERRORS=$(($NUM_ERRORS+1))
|
||
|
fi
|
||
|
done
|
||
|
if [ $NUM_ERRORS -gt 0 ]; then
|
||
|
echo "-- Number of errors: $NUM_ERRORS"
|
||
|
exit 1
|
||
|
else
|
||
|
echo "-- Passed"
|
||
|
exit 0
|
||
|
fi
|