ash: import param_expand_default.tests from hush

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2017-07-25 15:25:07 +02:00
parent 645c697372
commit be669fa1fd
3 changed files with 34 additions and 2 deletions

View File

@ -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

View File

@ -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}

View File

@ -1,6 +1,8 @@
# first try some invalid patterns (do in subshell due to parsing error) # first try some invalid patterns (do in subshell due to parsing error)
"$THIS_SH" -c 'echo ${-}' # (set argv0 to "SHELL" to avoid "/path/to/shell: blah" in error messages)
"$THIS_SH" -c 'echo ${:-}' # 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 # now some funky ones
echo _${#-} _${#:-} echo _${#-} _${#:-}