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/rmdir/fail-perm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/rmdir') diff --git a/tests/rmdir/fail-perm.sh b/tests/rmdir/fail-perm.sh index 4026201e3..985cb23bb 100755 --- a/tests/rmdir/fail-perm.sh +++ b/tests/rmdir/fail-perm.sh @@ -27,6 +27,6 @@ chmod a-w d || framework_failure_ # This rmdir command outputs two diagnostics. # Before coreutils-5.1.2, it would mistakenly exit successfully. # As of coreutils-5.1.2, it fails, as required. -rmdir -p d d/e/f 2> /dev/null && fail=1 +returns_ 1 rmdir -p d d/e/f 2> /dev/null || fail=1 Exit $fail -- cgit v1.2.3-70-g09d2