6 if [ -z "$JAVA" ] ; then
7 JAVA=../../../src/cacao/cacao
10 if [ "$1" = "--verbose" ] ; then
15 JASMIN_JAR=/usr/share/java/jasmin-sable.jar
16 JASMIN="$JAVA -cp $JASMIN_JAR jasmin.Main"
21 TESTBASENAME=$(basename "$TEST" .j)
24 TESTEXPECT="TESTEXPECT"
32 $JASMIN "$TEST" || exit 2
34 if grep 'ERROR:' "$TEST" >/dev/null ; then
36 EXPECTERROR=$(grep -o 'ERROR:.*' "$TEST" | sed 's,ERROR:\s*,,')
41 $JAVA "$TESTBASENAME" >"$TESTOUT" 2>"$TESTERR"
44 if [ $TESTSTATUS -ne $EXPECTSTATUS ] ; then
45 echo "FAIL: $TEST - expected status $EXPECTSTATUS, but got $TESTSTATUS"
48 if [ $EXPECTSTATUS -eq 0 ] ; then
49 grep 'OUTPUT:' "$TEST" | sed 's,.*OUTPUT:\s*,,' >"$TESTEXPECT"
51 if diff -u "$TESTEXPECT" "$TESTOUT" ; then
58 if [ "$VERBOSE" -eq "1" ] ; then
59 $JAVA -sia "$TESTBASENAME" >"$TESTLOG" || exit 2
63 if grep "$EXPECTERROR" "$TESTERR" >/dev/null ; then
64 echo "PASS: $TEST - got expected error: $EXPECTERROR"
66 echo "FAIL: $TEST - did not get expected error: $EXPECTERROR"
73 rm -f "$TESTOUT" "$TESTEXPECT" "$TESTLOG" "$TESTERR"