diff options
Diffstat (limited to 'tests/misc/close-stdout')
-rwxr-xr-x | tests/misc/close-stdout | 31 |
1 files changed, 9 insertions, 22 deletions
diff --git a/tests/misc/close-stdout b/tests/misc/close-stdout index 0f8c2eaab..301c8ecb5 100755 --- a/tests/misc/close-stdout +++ b/tests/misc/close-stdout @@ -2,7 +2,7 @@ # Ensure that several programs work fine, even with stdout initially closed. # This is effectively a test of closeout.c's close_stdout function. -# Copyright (C) 2004, 2006 Free Software Foundation, Inc. +# Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -22,22 +22,9 @@ if test "$VERBOSE" = yes; then rm --version fi -pwd=`pwd` -t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$ -trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0 -trap '(exit $?); exit $?' 1 2 13 15 +. $srcdir/../test-lib.sh -framework_failure=0 -mkdir -p $tmp || framework_failure=1 -cd $tmp || framework_failure=1 - -if test $framework_failure = 1; then - echo "$0: failure in testing framework" 1>&2 - (exit 1); exit 1 -fi - -PATH="$pwd/../..:$PATH" -export PATH +p="$abs_top_builddir" fail=0 @@ -54,21 +41,21 @@ mv d e >&- || fail=1 rmdir e >&- || fail=1 touch e >&- || fail=1 sleep 0 >&- || fail=1 -"$pwd/../../src/true" >&- || fail=1 -"$pwd/../../src/printf" '' >&- || fail=1 +"$p/src/true" >&- || fail=1 +"$p/src/printf" '' >&- || fail=1 # If >&- works, ensure these fail, because stdout is closed and they # *do* generate output. >&- apparently does not work in HP-UX 11.23. # This test is ineffective unless /dev/stdout also works. -if "$pwd/../../src/test" -w /dev/stdout >/dev/null && - "$pwd/../../src/test" ! -w /dev/stdout >&-; then - "$pwd/../../src/printf" 'foo' >&- 2>/dev/null && fail=1 +if "$p/src/test" -w /dev/stdout >/dev/null && + "$p/src/test" ! -w /dev/stdout >&-; then + "$p/src/printf" 'foo' >&- 2>/dev/null && fail=1 cp --verbose a b >&- 2>/dev/null && fail=1 fi # Likewise for /dev/full, if /dev/full works. if test -w /dev/full && test -c /dev/full; then - "$pwd/../../src/printf" 'foo' >/dev/full 2>/dev/null && fail=1 + "$p/src/printf" 'foo' >/dev/full 2>/dev/null && fail=1 cp --verbose a b >/dev/full 2>/dev/null && fail=1 fi |