planned=0
tryrun() {
+ if [ "$1" = "-v" ]; then
+ allout=1
+ shift
+ else
+ allout=0
+ fi
+
program=$1
shift
+
$program "$@" > test.out 2>&1
- tap_return_value=$?
- if [ $tap_return_value -ne 0 ]; then
+ tap_rv=$?
+ tn=$((tn + 1))
+
+ if [ $tap_rv -ne 0 ]; then
printf 'not ';
fi
- tn=$((tn + 1))
printf 'ok %d - %s %s\n' $tn $program "$*"
- if [ $tap_return_value -ne 0 ]; then
- cat test.out | diagstdin
+
+ if [ $allout -eq 1 ] || [ $tap_rv -ne 0 ]; then
+ if test -s test.out; then
+ cat test.out | diagstdin
+ fi
rm test.out
fi
- return $tap_return_value
+
+ return $tap_rv
}
require() {
tn=$((tn + 1))
tap_skipping=$((tap_skipping - 1))
printf 'ok %d - # skip %s\n' $tn "$*"
+ #ok '# skip ' "$*"
done
}
+
+ok() {
+ rv=$1
+ shift
+ if [ $rv = 1 ]; then
+ printf 'not '
+ fi
+ tn=$((tn + 1))
+ printf 'ok %d - %s\n' $tn "$*"
+ return $rv
+}
+
+pass() {
+ ok 0 "$@"
+}
+
+fail() {
+ ok 1 "$@"
+}