From e43d30eab3215bc9ff49ec7db3d3e2baa95ba070 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Tue, 3 Apr 2012 20:32:44 +0200 Subject: tests: convert nearly all `...` expressions to $(...) Exempt init.sh because it runs before we're assured to have a shell that groks $(...). Exempt *.mk because "$" would have to be doubled, and besides, any `...` expression in a .mk file is almost certainly evaluated before init.sh is run. Finally, also exempt the perl-based tests, because perl's `...` cannot be converted to $(...). Do that by running this command: git grep -l '`.*`' tests \ | grep -Ev 'init\.sh|\.mk$' | xargs grep -Lw perl \ | xargs perl -pi -e 's/`(.*?)`/\$($1)/g' One minor fix-up change was required after that, due to how quoting differs: diff --git a/tests/chmod/equals b/tests/chmod/equals - expected_perms=$(eval 'echo \$expected_'$dest) + expected_perms=$(eval 'echo $expected_'$dest) Another was to make these required quoting adjustments: diff --git a/tests/misc/stty b/tests/misc/stty ... - rev=$(eval echo "\\\$REV_$opt") + rev=$(eval echo "\$REV_$opt") ... - rev1=$(eval echo "\\\$REV_$opt1") - rev2=$(eval echo "\\\$REV_$opt2") + rev1=$(eval echo "\$REV_$opt1") + rev2=$(eval echo "\$REV_$opt2") Also, transform two files that were needlessly excluded above: (both use perl, but are mostly bourne shell) perl -pi -e 's/`(.*?)`/\$($1)/g' \ tests/du/long-from-unreadable tests/init.cfg --- tests/misc/date-sec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests/misc/date-sec') diff --git a/tests/misc/date-sec b/tests/misc/date-sec index 817e9243f..df77fe7bd 100755 --- a/tests/misc/date-sec +++ b/tests/misc/date-sec @@ -24,13 +24,13 @@ print_ver_ date # It would be easier simply to sleep for two seconds between two runs -# of `date --date="21:04 +0100" +%S` and ensure that both outputs +# of $(date --date="21:04 +0100" +%S) and ensure that both outputs # are '00', but I prefer not to sleep unconditionally. 'make check' # takes long enough as it is. n=0 # See if the current number of seconds is '00' or just before. -s=`date +%S` +s=$(date +%S) case "$s" in 58) n=3;; 59) n=2;; @@ -40,7 +40,7 @@ esac # If necessary, wait for the system clock to pass the minute mark. test $n = 0 || sleep $n -s=`date --date="21:04 +0100" +%S` +s=$(date --date="21:04 +0100" +%S) case "$s" in 00) ;; *) fail=1;; -- cgit v1.2.3-54-g00ecf