diff options
author | Mike Frysinger <vapier@gentoo.org> | 2009-03-28 18:55:34 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-03-28 18:55:34 +0000 |
commit | 78f9d8eb7adc10f1af8977212f24ab3c418a9c2b (patch) | |
tree | d63f339b310304c2c8c116503b41f589882ba2be /shell/hush_test/hush-vars/param_expand_assign.tests | |
parent | 6379bb4fde15dae3be641625e9af377eeb5a64d8 (diff) | |
download | busybox-78f9d8eb7adc10f1af8977212f24ab3c418a9c2b.tar.gz |
add hush tests for parameter expansion
Diffstat (limited to 'shell/hush_test/hush-vars/param_expand_assign.tests')
-rwxr-xr-x | shell/hush_test/hush-vars/param_expand_assign.tests | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/shell/hush_test/hush-vars/param_expand_assign.tests b/shell/hush_test/hush-vars/param_expand_assign.tests new file mode 100755 index 000000000..1fba556e4 --- /dev/null +++ b/shell/hush_test/hush-vars/param_expand_assign.tests @@ -0,0 +1,38 @@ +# first try some invalid patterns (do in subshell due to parsing error) +hush -c 'echo ${=}' +hush -c 'echo ${:=}' + +# now some funky ones +hush -c 'echo ${#=}' +hush -c 'echo ${#:=}' + +# should error out +hush -c 'set --; echo _${1=}' +hush -c 'set --; echo _${1:=}' +hush -c 'set --; echo _${1=word}' +hush -c 'set --; echo _${1:=word}' + +# should not error +hush -c 'set aa; echo _${1=}' +hush -c 'set aa; echo _${1:=}' +hush -c 'set aa; echo _${1=word}' +hush -c 'set aa; echo _${1:=word}' + +# should work fine +unset f; echo _$f +unset f; echo _${f=} +unset f; echo _${f:=} +unset f; echo _${f=word} +unset f; echo _${f:=word} + +f=; echo _$f +f=; echo _${f=} +f=; echo _${f:=} +f=; echo _${f=word} +f=; echo _${f:=word} + +f=fff; echo _$f +f=fff; echo _${f=} +f=fff; echo _${f:=} +f=fff; echo _${f=word} +f=fff; echo _${f:=word} |