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/du/deref.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/du/deref.sh') diff --git a/tests/du/deref.sh b/tests/du/deref.sh index 670ee5cc6..6c2a47241 100755 --- a/tests/du/deref.sh +++ b/tests/du/deref.sh @@ -34,7 +34,7 @@ ln -s nowhere dangle || framework_failure_ du -sD slink b > /dev/null 2>&1 || fail=1 # This used to fail to report the dangling symlink. -du -L dangle > /dev/null 2>&1 && fail=1 +returns_ 1 du -L dangle > /dev/null 2>&1 || fail=1 # du -L used to mess up, either by counting the symlink's disk space itself # (-L should follow symlinks, not count their space) -- cgit v1.2.3-54-g00ecf