diff options
author | Mike Frysinger <vapier@gentoo.org> | 2009-04-06 12:36:10 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-04-06 12:36:10 +0000 |
commit | 3c7167b508977997bb4ae43f12b34e60e9d3ba91 (patch) | |
tree | 8fa9467165daa79ad9f85daf0fd9360b1e8706b0 | |
parent | dc4178050a9e150d26fe7041191a5d124fcdf03c (diff) |
add tests for basic fd open/close/dupe
-rw-r--r-- | shell/hush_test/hush-misc/exec.right | 6 | ||||
-rw-r--r-- | shell/hush_test/hush-misc/exec.tests | 30 |
2 files changed, 36 insertions, 0 deletions
diff --git a/shell/hush_test/hush-misc/exec.right b/shell/hush_test/hush-misc/exec.right new file mode 100644 index 000000000..a0de6089a --- /dev/null +++ b/shell/hush_test/hush-misc/exec.right @@ -0,0 +1,6 @@ +pass fd out open +pass fd out dup +pass fd out close +pass fd in open +pass fd in dup +pass fd in close diff --git a/shell/hush_test/hush-misc/exec.tests b/shell/hush_test/hush-misc/exec.tests new file mode 100644 index 000000000..01a7f591c --- /dev/null +++ b/shell/hush_test/hush-misc/exec.tests @@ -0,0 +1,30 @@ +# make sure we have a way of checking these things +[ ! -e /dev/fd ] && exit 1 + +[ -e /dev/fd/44 ] && exit 1 +exec 44>/dev/null +[ -e /dev/fd/44 ] || exit 1 +echo pass fd out open + +[ -e /dev/fd/55 ] && exit 1 +exec 55>&44 +[ -e /dev/fd/55 ] || exit 1 +echo pass fd out dup + +exec 44>&- +[ -e /dev/fd/44 ] && exit 1 +echo pass fd out close + +[ -e /dev/fd/66 ] && exit 1 +exec 66</dev/null +[ -e /dev/fd/66 ] || exit 1 +echo pass fd in open + +[ -e /dev/fd/77 ] && exit 1 +exec 77<&66 +[ -e /dev/fd/77 ] || exit 1 +echo pass fd in dup + +exec 66<&- +[ -e /dev/fd/66 ] && exit 1 +echo pass fd in close |