aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2017-07-25 15:25:07 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2017-07-25 15:25:07 +0200
commitbe669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3 (patch)
tree5c65a8bb6788ee915dbc474e3407d40162a4c56b
parent645c697372b714f1293a37a185aa62965f600479 (diff)
downloadbusybox-w32-be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3.tar.gz
busybox-w32-be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3.tar.bz2
busybox-w32-be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3.zip
ash: import param_expand_default.tests from hush
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--shell/ash_test/ash-vars/param_expand_default.right7
-rwxr-xr-xshell/ash_test/ash-vars/param_expand_default.tests23
-rwxr-xr-xshell/hush_test/hush-vars/param_expand_default.tests6
3 files changed, 34 insertions, 2 deletions
diff --git a/shell/ash_test/ash-vars/param_expand_default.right b/shell/ash_test/ash-vars/param_expand_default.right
new file mode 100644
index 000000000..3eecd1375
--- /dev/null
+++ b/shell/ash_test/ash-vars/param_expand_default.right
@@ -0,0 +1,7 @@
1SHELL: line 1: syntax error: bad substitution
2_0 _0
3_ _ _ _word _word
4_aaaa _aaaa _aaaa _aaaa _aaaa
5_ _ _ _word _word
6_ _ _ _ _word
7_fff _fff _fff _fff _fff
diff --git a/shell/ash_test/ash-vars/param_expand_default.tests b/shell/ash_test/ash-vars/param_expand_default.tests
new file mode 100755
index 000000000..5e42d30e3
--- /dev/null
+++ b/shell/ash_test/ash-vars/param_expand_default.tests
@@ -0,0 +1,23 @@
1# first try some invalid patterns (do in subshell due to parsing error)
2# (set argv0 to "SHELL" to avoid "/path/to/shell: blah" in error messages)
3# valid in bash and ash (same as $-): "$THIS_SH" -c 'echo ${-}' SHELL
4"$THIS_SH" -c 'echo ${:-}' SHELL
5
6# now some funky ones
7echo _${#-} _${#:-}
8
9# now some valid ones
10set --
11echo _$1 _${1-} _${1:-} _${1-word} _${1:-word}
12
13set -- aaaa
14echo _$1 _${1-} _${1:-} _${1-word} _${1:-word}
15
16unset f
17echo _$f _${f-} _${f:-} _${f-word} _${f:-word}
18
19f=
20echo _$f _${f-} _${f:-} _${f-word} _${f:-word}
21
22f=fff
23echo _$f _${f-} _${f:-} _${f-word} _${f:-word}
diff --git a/shell/hush_test/hush-vars/param_expand_default.tests b/shell/hush_test/hush-vars/param_expand_default.tests
index 1ea051748..16e5f8efe 100755
--- a/shell/hush_test/hush-vars/param_expand_default.tests
+++ b/shell/hush_test/hush-vars/param_expand_default.tests
@@ -1,6 +1,8 @@
1# first try some invalid patterns (do in subshell due to parsing error) 1# first try some invalid patterns (do in subshell due to parsing error)
2"$THIS_SH" -c 'echo ${-}' 2# (set argv0 to "SHELL" to avoid "/path/to/shell: blah" in error messages)
3"$THIS_SH" -c 'echo ${:-}' 3# valid in bash and ash (same as $-), not supported in hush (yet?):
4"$THIS_SH" -c 'echo ${-}' SHELL
5"$THIS_SH" -c 'echo ${:-}' SHELL
4 6
5# now some funky ones 7# now some funky ones
6echo _${#-} _${#:-} 8echo _${#-} _${#:-}