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/chgrp/posix-H | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests/chgrp/posix-H') diff --git a/tests/chgrp/posix-H b/tests/chgrp/posix-H index a6474f562..3965f1ff5 100755 --- a/tests/chgrp/posix-H +++ b/tests/chgrp/posix-H @@ -46,7 +46,7 @@ for i in $changed; do # Filter out symlinks (entries that end in 's'), since it's not # possible to change their group/owner information on some systems. case $i in *s) continue;; esac - set _ `ls -dgn $i`; shift + set _ $(ls -dgn $i); shift group=$3 test $group = $g2 || fail=1 done @@ -62,7 +62,7 @@ for i in $not_changed; do # Filter out symlinks (entries that end in 's'), since it's not # possible to change their group/owner information on some systems. case $i in *s) continue;; esac - set _ `ls -dgn $i`; shift + set _ $(ls -dgn $i); shift group=$3 test $group = $g1 || fail=1 done -- cgit v1.2.3-70-g09d2