diff options
Diffstat (limited to 'tests/common.sh')
| -rw-r--r-- | tests/common.sh | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tests/common.sh b/tests/common.sh index dd64ade..80e0bea 100644 --- a/tests/common.sh +++ b/tests/common.sh @@ -13,6 +13,7 @@ function assert_exit_status() { set +e ./a.out res=$? + set -e if [ $res -ne $2 ] then echo "" @@ -22,11 +23,28 @@ function assert_exit_status() { echo "$1" exit 1 fi - set -e echo -n "." } function assert_exit_status_stdin() { code=$(</dev/stdin) assert_exit_status "$code" $1 +} + +function assert_compile_failure_stdin() { + code=$(</dev/stdin) + set +e + ./cupcc -c "$code" >/dev/null 2>&1 + res=$? + set -e + if [ $res -eq 0 ] + then + echo "" + echo "----------------------------------------------" + echo "Test failed: expected compilation, got success" + echo "----------------------------------------------" + echo "$code" + exit 1 + fi + echo -n "." }
\ No newline at end of file |