summaryrefslogtreecommitdiff
path: root/tests/readlink/can-e.sh
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2015-01-13 03:30:33 +0000
committerPádraig Brady <P@draigBrady.com>2015-01-14 12:20:32 +0000
commit58cff8a009ed9b8280c5f35074cef97231286023 (patch)
tree771e8b3fa70fab99b548790931803b75dd272603 /tests/readlink/can-e.sh
parent924b1cadff3f2782475516d7eca9aabe856dbf0f (diff)
downloadcoreutils-58cff8a009ed9b8280c5f35074cef97231286023.tar.xz
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.
Diffstat (limited to 'tests/readlink/can-e.sh')
-rwxr-xr-xtests/readlink/can-e.sh26
1 files changed, 13 insertions, 13 deletions
diff --git a/tests/readlink/can-e.sh b/tests/readlink/can-e.sh
index 91bea7807..05f297b7c 100755
--- a/tests/readlink/can-e.sh
+++ b/tests/readlink/can-e.sh
@@ -38,7 +38,7 @@ cd "$pwd/$tmp/removed" || framework_failure_
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
- v=$(readlink -e .) && fail=1
+ v=$(returns_ 1 readlink -e .) || fail=1
test -z "$v" || fail=1
fi
@@ -49,7 +49,7 @@ for p in "" "$pwd/$tmp/"; do
v=$(readlink -e "${p}regfile") || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
- v=$(readlink -e "${p}./regfile/") && fail=1
+ v=$(returns_ 1 readlink -e "${p}./regfile/") || fail=1
test -z "$v" || fail=1
v=$(readlink -e "${p}subdir") || fail=1
@@ -58,19 +58,19 @@ for p in "" "$pwd/$tmp/"; do
v=$(readlink -e "${p}./subdir/") || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
- v=$(readlink -e "${p}missing") && fail=1
+ v=$(returns_ 1 readlink -e "${p}missing") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}./missing/") && fail=1
+ v=$(returns_ 1 readlink -e "${p}./missing/") || fail=1
test -z "$v" || fail=1
v=$(readlink -e "${p}link1") || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
- v=$(readlink -e "${p}./link1/") && fail=1
+ v=$(returns_ 1 readlink -e "${p}./link1/") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}link1/more") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link1/more") || fail=1
test -z "$v" || fail=1
v=$(readlink -e "${p}link2") || fail=1
@@ -79,25 +79,25 @@ for p in "" "$pwd/$tmp/"; do
v=$(readlink -e "${p}./link2/") || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
- v=$(readlink -e "${p}link2/more") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link2/more") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}link3") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link3") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}./link3/") && fail=1
+ v=$(returns_ 1 readlink -e "${p}./link3/") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}link3/more") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link3/more") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}link4") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link4") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}./link4/") && fail=1
+ v=$(returns_ 1 readlink -e "${p}./link4/") || fail=1
test -z "$v" || fail=1
- v=$(readlink -e "${p}link4/more") && fail=1
+ v=$(returns_ 1 readlink -e "${p}link4/more") || fail=1
test -z "$v" || fail=1
done