summaryrefslogtreecommitdiff
path: root/shell/hush_test
diff options
context:
space:
mode:
authorDenis Vlasenko2007-11-23 21:08:38 +0000
committerDenis Vlasenko2007-11-23 21:08:38 +0000
commitcccdc4e01abb354c50aa483a21d5ff56a18c0b4a (patch)
tree4290b391d3ea634a0393082c2233935bf5357afc /shell/hush_test
parent835068637e81771a1b45b9faf04a31830f0e5d8a (diff)
downloadbusybox-cccdc4e01abb354c50aa483a21d5ff56a18c0b4a.zip
busybox-cccdc4e01abb354c50aa483a21d5ff56a18c0b4a.tar.gz
hush: fix $ expansion in redirections, add testcase for that
Diffstat (limited to 'shell/hush_test')
-rw-r--r--shell/hush_test/hush-vars/var_expand_in_redir.right3
-rwxr-xr-xshell/hush_test/hush-vars/var_expand_in_redir.tests13
-rwxr-xr-xshell/hush_test/run-all1
3 files changed, 17 insertions, 0 deletions
diff --git a/shell/hush_test/hush-vars/var_expand_in_redir.right b/shell/hush_test/hush-vars/var_expand_in_redir.right
new file mode 100644
index 0000000..423299c
--- /dev/null
+++ b/shell/hush_test/hush-vars/var_expand_in_redir.right
@@ -0,0 +1,3 @@
+TEST1
+TEST2
+TEST3
diff --git a/shell/hush_test/hush-vars/var_expand_in_redir.tests b/shell/hush_test/hush-vars/var_expand_in_redir.tests
new file mode 100755
index 0000000..bda6bdd
--- /dev/null
+++ b/shell/hush_test/hush-vars/var_expand_in_redir.tests
@@ -0,0 +1,13 @@
+if test $# = 0; then
+ exec "$THIS_SH" "$0" abc "d e"
+fi
+
+echo TEST1 >"$1.out"
+echo TEST2 >"$2.out"
+# bash says: "$@.out": ambiguous redirect
+# ash handles it as if it is '$*' - we do the same
+echo TEST3 >"$@.out"
+
+cat abc.out "d e.out" "abc d e.out"
+
+rm abc.out "d e.out" "abc d e.out"
diff --git a/shell/hush_test/run-all b/shell/hush_test/run-all
index 0d40ae6..c75d81e 100755
--- a/shell/hush_test/run-all
+++ b/shell/hush_test/run-all
@@ -11,6 +11,7 @@ export THIS_SH
do_test()
{
test -d "$1" || return 0
+# echo Running tests in directory "$1"
(
cd "$1" || { echo "cannot cd $1!"; exit 1; }
for x in run-*; do