diff options
author | Mike Frysinger | 2009-03-30 06:50:54 +0000 |
---|---|---|
committer | Mike Frysinger | 2009-03-30 06:50:54 +0000 |
commit | d690f68554f1c1301975bc0ab0e479e6870b3589 (patch) | |
tree | edf70533e5a6d316f618fcb1002d14b02dcb3cfe /shell/hush_test | |
parent | 5f9f1506ad298c94e816780a3e2d5692d002fb81 (diff) | |
download | busybox-d690f68554f1c1301975bc0ab0e479e6870b3589.zip busybox-d690f68554f1c1301975bc0ab0e479e6870b3589.tar.gz |
implement `unset` semantics as required by POSIX
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-vars/unset.right | 19 | ||||
-rwxr-xr-x | shell/hush_test/hush-vars/unset.tests | 36 |
2 files changed, 55 insertions, 0 deletions
diff --git a/shell/hush_test/hush-vars/unset.right b/shell/hush_test/hush-vars/unset.right new file mode 100644 index 0000000..8dea7c4 --- /dev/null +++ b/shell/hush_test/hush-vars/unset.right @@ -0,0 +1,19 @@ +hush: unset: -: invalid option +1 +hush: unset: -m: invalid option +1 +0 +___ +0 f g +0 g +0 +___ +0 f g +0 +0 f g +0 +___ +hush: HUSH_VERSION: readonly variable +1 f g +hush: HUSH_VERSION: readonly variable +1 diff --git a/shell/hush_test/hush-vars/unset.tests b/shell/hush_test/hush-vars/unset.tests new file mode 100755 index 0000000..f59ce59 --- /dev/null +++ b/shell/hush_test/hush-vars/unset.tests @@ -0,0 +1,36 @@ +# check invalid options are rejected +unset - +echo $? +unset -m a b c +echo $? + +# check funky usage +unset +echo $? + +# check normal usage +echo ___ +f=f g=g +echo $? $f $g +unset f +echo $? $f $g +unset g +echo $? $f $g + +echo ___ +f=f g=g +echo $? $f $g +unset f g +echo $? $f $g +f=f g=g +echo $? $f $g +unset -v f g +echo $? $f $g + +# check read only vars +echo ___ +f=f g=g +unset HUSH_VERSION +echo $? $f $g +unset f HUSH_VERSION g +echo $? $f $g |