From cfce58e453a56f0e60b73157e01d17c193af19a4 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Tue, 8 Nov 2016 19:57:41 -0600 Subject: [PATCH] tests: use "returns_" rather than explicit comparison with "$?" The previous "returns_"-using change failed to convert many uses of "$?". Convert all but two of the remaining ones. * tests/ls/stat-vs-dirent.sh: Likewise. * tests/misc/head-write-error.sh: Likewise. * tests/misc/nice.sh: Likewise. * tests/misc/nohup.sh: Likewise. * tests/misc/stdbuf.sh: Likewise. * tests/misc/sync.sh: Likewise. * tests/tail-2/pid.sh: Likewise. * tests/tail-2/wait.sh: Likewise. Thanks to Bernhard Volker for spotting this. --- tests/ls/stat-vs-dirent.sh | 3 +-- tests/misc/head-write-error.sh | 7 +++---- tests/misc/nice.sh | 3 +-- tests/misc/nohup.sh | 9 +++------ tests/misc/stdbuf.sh | 22 ++++++++++------------ tests/misc/sync.sh | 3 +-- tests/tail-2/pid.sh | 6 ++---- tests/tail-2/wait.sh | 18 ++++++------------ 8 files changed, 27 insertions(+), 44 deletions(-) diff --git a/tests/ls/stat-vs-dirent.sh b/tests/ls/stat-vs-dirent.sh index b9f3cd1..fa2087f 100755 --- a/tests/ls/stat-vs-dirent.sh +++ b/tests/ls/stat-vs-dirent.sh @@ -23,8 +23,7 @@ print_ver_ ls root_dev_ino=$(stat --format=%d-%i /) t=$(pwd) while :; do - ls -i1 "$t" > tmp - if test $? = 0; then + if ls -i1 "$t" > tmp; then # Extract the inode number from the first line of output from ls -i1. # This value comes from dirent.d_ino, on systems with d_ino support. d_ino=$(sed -n '1s/^ *\([0-9][0-9]*\) .*/\1/p;q' tmp) diff --git a/tests/misc/head-write-error.sh b/tests/misc/head-write-error.sh index 4c021f5..1e8e566 100755 --- a/tests/misc/head-write-error.sh +++ b/tests/misc/head-write-error.sh @@ -36,14 +36,13 @@ printf '%s\n' "head: error writing 'standard output'" > exp for item in lines bytes; do for N in 0 1; do # pipe case - yes | timeout 10s head --$item=-$N > /dev/full 2> errt && fail=1 - test $? = 124 && fail=1 + yes | returns_ 1 timeout 10s head --$item=-$N > /dev/full 2> errt || fail=1 sed 's/\(head:.*\):.*/\1/' errt > err compare exp err || fail=1 # seekable case - timeout 10s head --$item=-$N bigseek > /dev/full 2> errt && fail=1 - test $? = 124 && fail=1 + returns_ 1 timeout 10s head --$item=-$N bigseek > /dev/full 2> errt \ + || fail=1 sed 's/\(head:.*\):.*/\1/' errt > err compare exp err || fail=1 done diff --git a/tests/misc/nice.sh b/tests/misc/nice.sh index 85523eb..36d6f91 100755 --- a/tests/misc/nice.sh +++ b/tests/misc/nice.sh @@ -79,8 +79,7 @@ if test x$(nice -n -1 nice 2> /dev/null) = x0 ; then compare exp err || fail=1 # Failure to write advisory message is fatal. Buggy through coreutils 8.0. if test -w /dev/full && test -c /dev/full; then - nice -n -1 nice > out 2> /dev/full - test $? = 125 || fail=1 + returns_ 125 nice -n -1 nice > out 2> /dev/full || fail=1 compare /dev/null out || fail=1 fi else diff --git a/tests/misc/nohup.sh b/tests/misc/nohup.sh index ad60185..e9c8c38 100755 --- a/tests/misc/nohup.sh +++ b/tests/misc/nohup.sh @@ -70,8 +70,7 @@ if test -w /dev/full && test -c /dev/full; then exec >/dev/tty test -t 1 || exit 0 - nohup echo hi 2> /dev/full - test $? = 125 || fail=1 + returns_ 125 nohup echo hi 2> /dev/full || fail=1 test -f nohup.out || fail=1 compare /dev/null nohup.out || fail=1 rm -f nohup.out @@ -118,9 +117,7 @@ EOF # Make sure it fails with exit status of 125 when given too few arguments, # except that POSIX requires 127 in this case. -nohup >/dev/null 2>&1 -test $? = 125 || fail=1 -POSIXLY_CORRECT=1 nohup >/dev/null 2>&1 -test $? = 127 || fail=1 +returns_ 125 nohup >/dev/null 2>&1 || fail=1 +POSIXLY_CORRECT=1 returns_ 127 nohup >/dev/null 2>&1 || fail=1 Exit $fail diff --git a/tests/misc/stdbuf.sh b/tests/misc/stdbuf.sh index 7b9aed5..31f02b7 100755 --- a/tests/misc/stdbuf.sh +++ b/tests/misc/stdbuf.sh @@ -43,19 +43,17 @@ stdbuf -o1 true || fail=1 # verify size syntax stdbuf -oK true || fail=1 # verify size syntax stdbuf -o0 true || fail=1 # verify unbuffered syntax stdbuf -oL true || fail=1 # verify line buffered syntax -stdbuf -ol true # Capital 'L' required -test $? = 125 || fail=1 # Internal error is a particular status -stdbuf -o$SIZE_OFLOW true # size too large -test $? = 125 || fail=1 -stdbuf -iL true # line buffering stdin disallowed -test $? = 125 || fail=1 -stdbuf true # a buffering mode must be specified -test $? = 125 || fail=1 + +# Capital 'L' required +# Internal error is a particular status +returns_ 125 stdbuf -ol true || fail=1 + +returns_ 125 stdbuf -o$SIZE_OFLOW true || fail=1 # size too large +returns_ 125 stdbuf -iL true || fail=1 # line buffering stdin disallowed +returns_ 125 stdbuf true || fail=1 # a buffering mode must be specified stdbuf -i0 -o0 -e0 true || fail=1 #check all files -stdbuf -o1 . # invalid command -test $? = 126 || fail=1 -stdbuf -o1 no_such # no such command -test $? = 127 || fail=1 +returns_ 126 stdbuf -o1 . || fail=1 # invalid command +returns_ 127 stdbuf -o1 no_such || fail=1 # no such command # Terminate any background processes cleanup_() { kill $pid 2>/dev/null && wait $pid; } diff --git a/tests/misc/sync.sh b/tests/misc/sync.sh index 5bf569c..cd89c5b 100755 --- a/tests/misc/sync.sh +++ b/tests/misc/sync.sh @@ -45,8 +45,7 @@ fi if test "$fail" != '1'; then # Ensure a fifo doesn't block mkfifo_or_skip_ fifo - timeout 10 sync fifo - test $? = 124 && fail=1 + returns_ 124 timeout 10 sync fifo && fail=1 fi Exit $fail diff --git a/tests/tail-2/pid.sh b/tests/tail-2/pid.sh index 9e73b84..ba67b46 100755 --- a/tests/tail-2/pid.sh +++ b/tests/tail-2/pid.sh @@ -31,8 +31,7 @@ for mode in '' '---disable-inotify'; do tail -f $mode here & pid=$! # Ensure that tail --pid=PID does not exit when PID is alive. - timeout 1 tail -f -s.1 --pid=$pid $mode here - test $? = 124 || fail=1 + returns_ 124 timeout 1 tail -f -s.1 --pid=$pid $mode here || fail=1 cleanup_ @@ -44,8 +43,7 @@ for mode in '' '---disable-inotify'; do test $ret = 0 || fail=1 # Ensure tail doesn't wait for data when PID is dead - timeout 10 tail -f -s10 --pid=$PID_T_MAX $mode empty - test $? = 124 && fail=1 + returns_ 124 timeout 10 tail -f -s10 --pid=$PID_T_MAX $mode empty && fail=1 done Exit $fail diff --git a/tests/tail-2/wait.sh b/tests/tail-2/wait.sh index 59f796a..1b54327 100755 --- a/tests/tail-2/wait.sh +++ b/tests/tail-2/wait.sh @@ -35,29 +35,23 @@ cleanup_() { kill $pid 2>/dev/null && wait $pid; } fastpoll='-s.1 --max-unchanged-stats=1' for mode in '' '---disable-inotify'; do - timeout 10 tail $fastpoll -f $mode not_here - test $? = 124 && fail=1 + returns_ 124 timeout 10 tail $fastpoll -f $mode not_here && fail=1 if test ! -r unreadable; then # can't test this when root - timeout 10 tail $fastpoll -f $mode unreadable - test $? = 124 && fail=1 + returns_ 124 timeout 10 tail $fastpoll -f $mode unreadable && fail=1 fi - timeout .1 tail $fastpoll -f $mode here 2>tail.err - test $? = 124 || fail=1 + returns_ 124 timeout .1 tail $fastpoll -f $mode here 2>tail.err || fail=1 # 'tail -F' must wait in any case. - timeout .1 tail $fastpoll -F $mode here 2>>tail.err - test $? = 124 || fail=1 + returns_ 124 timeout .1 tail $fastpoll -F $mode here 2>>tail.err || fail=1 if test ! -r unreadable; then # can't test this when root - timeout .1 tail $fastpoll -F $mode unreadable - test $? = 124 || fail=1 + returns_ 124 timeout .1 tail $fastpoll -F $mode unreadable || fail=1 fi - timeout .1 tail $fastpoll -F $mode not_here - test $? = 124 || fail=1 + returns_ 124 timeout .1 tail $fastpoll -F $mode not_here || fail=1 grep -Ev "$inotify_failed_re" tail.err > x mv x tail.err -- 2.9.3