#! /bin/sh fail () { echo "Test failed: $*" exit 1 } echo_v () { if [ "$verbose" = "1" ]; then echo "$*" fi } error_out=/dev/null if [ "$1" = "-v" ]; then verbose=1 error_out=/dev/stderr fi for I in ${srcdir:-.}/markups/fail-*.gmarkup; do echo_v "Parsing $I, should fail" ./markup-test $I > /dev/null 2> $error_out && fail "failed to generate error on $I" if test "$?" != "1"; then fail "unexpected error on $I" fi done I=1 while test $I -lt 100 ; do F=${srcdir:-.}/markups/valid-$I.gmarkup if [ -f $F ] ; then echo_v "Parsing $F, should succeed" ./markup-test $F > actual 2> $error_out || fail "failed on $F" diff ${srcdir:-.}/markups/expected-$I actual || fail "unexpected output on $F" rm actual fi I=`expr $I + 1` done echo_v "All tests passed."