From 58cff8a009ed9b8280c5f35074cef97231286023 Mon Sep 17 00:00:00 2001 From: Pádraig Brady Date: Tue, 13 Jan 2015 03:30:33 +0000 Subject: tests: add extra protection against unexpected exits Many tests use `program ... && fail=1` to ensure expected error situations are indicated. However that would mask an unexpected exit (like a crash). Therefore explicitly check the expected exit code. Note where error messages are also verified, the extra protection is not added. * tests/init.sh (returns_): A new helper function to check the return code of a command, and used throughout the tests. * cfg.mk (sc_prohibit_and_fail_1): Add a syntax check to avoid new instances of this issue. --- tests/mv/part-rename.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests/mv/part-rename.sh') diff --git a/tests/mv/part-rename.sh b/tests/mv/part-rename.sh index da88260a8..b84f68864 100755 --- a/tests/mv/part-rename.sh +++ b/tests/mv/part-rename.sh @@ -31,13 +31,13 @@ mv foo/ "$other_partition_tmpdir/bar" || fail=1 # Moving a non directory from source shouldn't replace empty dir in dest touch bar || framework_failure_ -mv bar "$other_partition_tmpdir/" && fail=1 +returns_ 1 mv bar "$other_partition_tmpdir/" || fail=1 # Moving a directory from source shouldn't replace non directory in dest mkdir bar2 touch "$other_partition_tmpdir/bar2" -mv bar2 "$other_partition_tmpdir/" && fail=1 +returns_ 1 mv bar2 "$other_partition_tmpdir/" || fail=1 # As per POSIX moving directory from source should replace empty dir in dest @@ -51,7 +51,7 @@ test -e "$other_partition_tmpdir/bar3/file" || fail=1 # As per POSIX moving directory from source shouldn't update dir in dest mkdir bar3 touch bar3/file2 -mv bar3 "$other_partition_tmpdir/" && fail=1 +returns_ 1 mv bar3 "$other_partition_tmpdir/" || fail=1 test -e "$other_partition_tmpdir/bar3/file2" && fail=1 Exit $fail -- cgit v1.2.3-70-g09d2