diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-06-14 13:13:58 +0200 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-06-22 14:24:38 +0200 |
commit | 6e713425a0dcede167924e7691e95ab5e54e399c (patch) | |
tree | 4ce8cbe368733dc0049b5b690b13e0e3123d7a3a /t/tap-fancy2.sh | |
parent | d0dc448517d3a61ba55e62dd76b9a42b68bef8f8 (diff) | |
download | automake-6e713425a0dcede167924e7691e95ab5e54e399c.tar.gz |
tests: use more POSIX shell features our test scripts
Since commit 'v1.12-36-g2d68fd9' of 2012-05-07, "configure: search a
sturdy POSIX shell to be used in the testsuite", the shell running
our test script is assured to be a POSIX-conforming shell, so we can
use the more modern and flexible idioms and features that we couldn't
use when we also aimed at compatibility with non-POSIX Bourne shells,
like Solaris /bin/sh.
* t/README: Suggest to use POSIX shell features liberally in test cases,
with possible exception of Makefile recipes and configure shell code.
* Several tests: Adjust to use more POSIX shell features; e.g., $(...)
rather than `...`, $((...)) rather than `expr ...`, "if ! CMD; then ..."
instead of "if CMD; then :; else ...", and so on.
In several places, when using the 'test' built-in, prefer '-eq' over
'=' for numeric comparisons, and prefer "grep -c PATTERN FILE" over
"grep PATTERN FILE | wc -l".
Throw in other low-hanging easy improvements and fixlets while we are
at it.
* t/ax/depcomp.sh, t/ax/tap-summary-aux.sh, t/ax/tap-functions.sh,
defs, defs-static.in: Likewise.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Diffstat (limited to 't/tap-fancy2.sh')
-rwxr-xr-x | t/tap-fancy2.sh | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/t/tap-fancy2.sh b/t/tap-fancy2.sh index 6ab67c9f6..4bf014f8a 100755 --- a/t/tap-fancy2.sh +++ b/t/tap-fancy2.sh @@ -24,9 +24,9 @@ # # From manpage Test::Harness::TAP(3): # -# ``Lines written to standard output matching /^(not )?ok\b/ must be +# Lines written to standard output matching /^(not )?ok\b/ must be # interpreted as test lines. All other lines must not be considered -# test output.'' +# test output. # # Unfortunately, the exact format of TODO and SKIP directives is not as # clearly described in that manpage; but a simple reverse-engineering of @@ -108,7 +108,7 @@ xfail=130 # = 4 * 34 - 6 xpass=130 # = 4 * 34 - 6 skip=130 # = 4 * 34 - 6 error=0 -total=`expr $pass + $fail + $xfail + $xpass + $skip` +total=$(($pass + $fail + $xfail + $xpass + $skip)) # Even nastier! But accordingly to the specifics, it should still work. for result in 'ok' 'not ok'; do @@ -117,10 +117,10 @@ done echo "ok{[(<#${tab}SKIP>)]}" >> all.test # We have to update some test counts. -xfail=`expr $xfail + 1` -xpass=`expr $xpass + 1` -skip=`expr $skip + 1` -total=`expr $total + 3` +xfail=$(($xfail + 1)) +xpass=$(($xpass + 1)) +skip=$(($skip + 1)) +total=$(($total + 3)) # And add the test plan! echo 1..$total >> all.test |