diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-25 15:25:07 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-25 15:25:07 +0200 |
commit | be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3 (patch) | |
tree | 5c65a8bb6788ee915dbc474e3407d40162a4c56b /shell | |
parent | 645c697372b714f1293a37a185aa62965f600479 (diff) |
ash: import param_expand_default.tests from hush
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ash_test/ash-vars/param_expand_default.right | 7 | ||||
-rwxr-xr-x | shell/ash_test/ash-vars/param_expand_default.tests | 23 | ||||
-rwxr-xr-x | shell/hush_test/hush-vars/param_expand_default.tests | 6 |
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 @@ +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 _${#-} _${#:-} |