From: Denys Vlasenko Date: Tue, 25 Jul 2017 13:25:07 +0000 (+0200) Subject: ash: import param_expand_default.tests from hush X-Git-Tag: 1_28_0~316 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3;p=oweals%2Fbusybox.git ash: import param_expand_default.tests from hush Signed-off-by: Denys Vlasenko --- 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 @@ +SHELL: line 1: syntax error: bad substitution +_0 _0 +_ _ _ _word _word +_aaaa _aaaa _aaaa _aaaa _aaaa +_ _ _ _word _word +_ _ _ _ _word +_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 @@ +# first try some invalid patterns (do in subshell due to parsing error) +# (set argv0 to "SHELL" to avoid "/path/to/shell: blah" in error messages) +# valid in bash and ash (same as $-): "$THIS_SH" -c 'echo ${-}' SHELL +"$THIS_SH" -c 'echo ${:-}' SHELL + +# now some funky ones +echo _${#-} _${#:-} + +# now some valid ones +set -- +echo _$1 _${1-} _${1:-} _${1-word} _${1:-word} + +set -- aaaa +echo _$1 _${1-} _${1:-} _${1-word} _${1:-word} + +unset f +echo _$f _${f-} _${f:-} _${f-word} _${f:-word} + +f= +echo _$f _${f-} _${f:-} _${f-word} _${f:-word} + +f=fff +echo _$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 @@ # first try some invalid patterns (do in subshell due to parsing error) -"$THIS_SH" -c 'echo ${-}' -"$THIS_SH" -c 'echo ${:-}' +# (set argv0 to "SHELL" to avoid "/path/to/shell: blah" in error messages) +# valid in bash and ash (same as $-), not supported in hush (yet?): +"$THIS_SH" -c 'echo ${-}' SHELL +"$THIS_SH" -c 'echo ${:-}' SHELL # now some funky ones echo _${#-} _${#:-}