diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2010-11-14 02:01:50 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-11-14 02:01:50 +0100 |
commit | 6696eac274b5dcf5932b211fe9ee748d8268a39c (patch) | |
tree | 9a088e5b9680d4657f6ebe3ad266d5502deb1f8b /shell/hush_test | |
parent | c08c3f5d262acab7082cca88d0b2a329184b133b (diff) | |
download | busybox-6696eac274b5dcf5932b211fe9ee748d8268a39c.tar.gz |
hush: add support for "set -o pipefail"
function old new delta
checkjobs 467 517 +50
builtin_set 259 286 +27
o_opt_strings - 10 +10
hush_main 1011 1013 +2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/0 up/down: 89/0) Total: 89 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-misc/pipefail.right | 40 | ||||
-rwxr-xr-x | shell/hush_test/hush-misc/pipefail.tests | 45 |
2 files changed, 85 insertions, 0 deletions
diff --git a/shell/hush_test/hush-misc/pipefail.right b/shell/hush_test/hush-misc/pipefail.right new file mode 100644 index 000000000..5845d8939 --- /dev/null +++ b/shell/hush_test/hush-misc/pipefail.right @@ -0,0 +1,40 @@ +Default: +true | true: +0 +1 +true | false: +1 +0 +false | true: +0 +1 +exit 2 | exit 3 | exit 4: +4 +0 +Pipefail on: +true | true: +0 +1 +true | false: +1 +0 +false | true: +1 +0 +exit 2 | exit 3 | exit 4: +4 +0 +Pipefail off: +true | true: +0 +1 +true | false: +1 +0 +false | true: +0 +1 +exit 2 | exit 3 | exit 4: +4 +0 +Done diff --git a/shell/hush_test/hush-misc/pipefail.tests b/shell/hush_test/hush-misc/pipefail.tests new file mode 100755 index 000000000..9df841861 --- /dev/null +++ b/shell/hush_test/hush-misc/pipefail.tests @@ -0,0 +1,45 @@ +echo Default: +echo "true | true:" + true | true; echo $? +! true | true; echo $? +echo "true | false:" + true | false; echo $? +! true | false; echo $? +echo "false | true:" + false | true; echo $? +! false | true; echo $? +echo "exit 2 | exit 3 | exit 4:" + exit 2 | exit 3 | exit 4; echo $? +! exit 2 | exit 3 | exit 4; echo $? + +echo Pipefail on: +set -o pipefail +echo "true | true:" + true | true; echo $? +! true | true; echo $? +echo "true | false:" + true | false; echo $? +! true | false; echo $? +echo "false | true:" + false | true; echo $? +! false | true; echo $? +echo "exit 2 | exit 3 | exit 4:" + exit 2 | exit 3 | exit 4; echo $? +! exit 2 | exit 3 | exit 4; echo $? + +echo Pipefail off: +set +o pipefail +echo "true | true:" + true | true; echo $? +! true | true; echo $? +echo "true | false:" + true | false; echo $? +! true | false; echo $? +echo "false | true:" + false | true; echo $? +! false | true; echo $? +echo "exit 2 | exit 3 | exit 4:" + exit 2 | exit 3 | exit 4; echo $? +! exit 2 | exit 3 | exit 4; echo $? + +echo Done |