From ea1c1b75153740355fd54c4455237be1f8cbd427 Mon Sep 17 00:00:00 2001 From: =?utf8?q?P=C3=A1draig=20Brady?=
Date: Sat, 29 Feb 2020 20:48:58 +0000
Subject: [PATCH] tests: fix incorrect `|| fail` pattern in tests
* tests/ls/stat-free-symlinks.sh: s/|| fail/|| fail=1/.
* tests/misc/tee.sh: Likewise.
* tests/touch/relative.sh: Likewise.
* cfg.mk (sc_prohibit_or_fail): A new syntax-check to avoid this.
---
cfg.mk | 8 ++++++++
tests/ls/stat-free-symlinks.sh | 2 +-
tests/misc/tee.sh | 2 +-
tests/touch/relative.sh | 2 +-
4 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/cfg.mk b/cfg.mk
index c9b8c7af57..bb0960a260 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -519,6 +519,14 @@ sc_prohibit_and_fail_1:
in_vc_files='^tests/' \
$(_sc_search_regexp)
+# Ensure that tests don't use `cmd ... || fail` as that's a noop.
+sc_prohibit_or_fail:
+ @prohibit='\|\| fail$$' \
+ exclude=':#' \
+ halt='|| fail detected. Please use: || fail=1' \
+ in_vc_files='^tests/' \
+ $(_sc_search_regexp)
+
# Ensure that env vars are not passed through returns_ as
# that was seen to fail on FreeBSD /bin/sh at least
sc_prohibit_env_returns:
diff --git a/tests/ls/stat-free-symlinks.sh b/tests/ls/stat-free-symlinks.sh
index c538a1c513..a786145dbb 100755
--- a/tests/ls/stat-free-symlinks.sh
+++ b/tests/ls/stat-free-symlinks.sh
@@ -32,7 +32,7 @@ ln -s x link-to-x || framework_failure_
# symlink and an executable file properly.
LS_COLORS='or=0:mi=0:ex=01;32:ln=01;35' \
- strace -qe stat ls -F --color=always x link-to-x > out.tmp 2> err || fail
+ strace -qe stat ls -F --color=always x link-to-x > out.tmp 2> err || fail=1
# Elide info messages strace can send to stdout of the form:
# [ Process PID=1234 runs in 32 bit mode. ]
sed '/Process PID=/d' out.tmp > out
diff --git a/tests/misc/tee.sh b/tests/misc/tee.sh
index f8774787a6..d5b3e555bd 100755
--- a/tests/misc/tee.sh
+++ b/tests/misc/tee.sh
@@ -37,7 +37,7 @@ done
tee -