summaryrefslogtreecommitdiff
path: root/tests/misc/close-stdout
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc/close-stdout')
-rwxr-xr-xtests/misc/close-stdout8
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/misc/close-stdout b/tests/misc/close-stdout
index fc92da651..4bdbbcb1d 100755
--- a/tests/misc/close-stdout
+++ b/tests/misc/close-stdout
@@ -1,5 +1,6 @@
#!/bin/sh
# Ensure that several programs work fine, even with stdout initially closed.
+# This is effectively a test of closeout.c's close_stdout function.
if test "$VERBOSE" = yes; then
set -x
@@ -23,6 +24,9 @@ fi
PATH="$pwd/../..:$PATH"
export PATH
+fail=0
+
+# Ensure these exit successfully, even though stdout is closed.
touch a
cp a b >&- || fail=1
test -f b || fail=1
@@ -37,4 +41,8 @@ sleep 0 >&- || fail=1
$pwd/../../src/true >&- || fail=1
$pwd/../../src/printf '' >&- || fail=1
+# Ensure these fail, because stdout is closed.
+$pwd/../../src/printf 'foo' >&- 2>/dev/null && fail=1
+cp --verbose a b >&- 2>/dev/null && fail=1
+
(exit $fail); exit $fail