ash: add a few tests from hush-vars/*

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko
2017-07-25 14:55:05 +02:00
parent 73c47f6c41
commit 64925384c9
10 changed files with 283 additions and 23 deletions

View File

@@ -1,22 +1,23 @@
# first try some invalid patterns (do in subshell due to parsing error)
"$THIS_SH" -c 'echo ${=}'
"$THIS_SH" -c 'echo ${:=}'
# 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)
"$THIS_SH" -c 'echo ${=}' SHELL
"$THIS_SH" -c 'echo ${:=}' SHELL
# now some funky ones
"$THIS_SH" -c 'echo ${#=}'
"$THIS_SH" -c 'echo ${#:=}'
"$THIS_SH" -c 'echo ${#=}' SHELL
"$THIS_SH" -c 'echo ${#:=}' SHELL
# should error out
"$THIS_SH" -c 'set --; echo _${1=}'
"$THIS_SH" -c 'set --; echo _${1:=}'
"$THIS_SH" -c 'set --; echo _${1=word}'
"$THIS_SH" -c 'set --; echo _${1:=word}'
"$THIS_SH" -c 'set --; echo _${1=}' SHELL
"$THIS_SH" -c 'set --; echo _${1:=}' SHELL
"$THIS_SH" -c 'set --; echo _${1=word}' SHELL
"$THIS_SH" -c 'set --; echo _${1:=word}' SHELL
# should not error
"$THIS_SH" -c 'set aa; echo _${1=}'
"$THIS_SH" -c 'set aa; echo _${1:=}'
"$THIS_SH" -c 'set aa; echo _${1=word}'
"$THIS_SH" -c 'set aa; echo _${1:=word}'
"$THIS_SH" -c 'set aa; echo _${1=}' SHELL
"$THIS_SH" -c 'set aa; echo _${1:=}' SHELL
"$THIS_SH" -c 'set aa; echo _${1=word}' SHELL
"$THIS_SH" -c 'set aa; echo _${1:=word}' SHELL
# should work fine
unset f; echo _$f