diff options
Diffstat (limited to 'tests/mv/leak-fd')
-rwxr-xr-x | tests/mv/leak-fd | 43 |
1 files changed, 12 insertions, 31 deletions
diff --git a/tests/mv/leak-fd b/tests/mv/leak-fd index 394c6c92d..515ad20fb 100755 --- a/tests/mv/leak-fd +++ b/tests/mv/leak-fd @@ -2,7 +2,7 @@ # Exercise mv's file-descriptor-leak bug, reported against coreutils-5.2.1 # and fixed (properly) on 2004-10-21. -# 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 @@ -16,35 +16,21 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. - - -# This test is relatively expensive, and might well evoke a -# framework-failure on systems with a smaller command-line length # limit so don't run it by default. -. $srcdir/../expensive if test "$VERBOSE" = yes; then set -x mv --version fi -. $srcdir/../other-fs-tmpdir -. $srcdir/../envvar-check -PRIV_CHECK_ARG=require-non-root . $srcdir/../priv-check - -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 - -if test -z "$other_partition_tmpdir"; then - (exit 77); exit 77 -fi -t0="$t0 $other_partition_tmpdir" +# This test is relatively expensive, and might well evoke a +# framework-failure on systems with a smaller command-line length +. $srcdir/../expensive -framework_failure=0 -mkdir -p $tmp || framework_failure=1 -cd $tmp || framework_failure=1 +PRIV_CHECK_ARG=require-non-root . $srcdir/../priv-check +. $srcdir/../test-lib.sh +cleanup_() { rm -rf "$other_partition_tmpdir"; } +. "$abs_top_srcdir/tests/other-fs-tmpdir" b="0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z @@ -56,16 +42,11 @@ for i in `echo $b`; do echo $i$j done done > .dirs -mkdir `cat .dirs` || framework_failure=1 +mkdir `cat .dirs` || framework_failure sed 's,$,/f,' .dirs | xargs touch last_file=`tail -n1 .dirs`/f -test -f $last_file || framework_failure=1 - -if test $framework_failure = 1; then - echo "$0: failure in testing framework" 1>&2 - (exit 1); exit 1 -fi +test -f $last_file || framework_failure fail=0 @@ -73,7 +54,7 @@ mv * $other_partition_tmpdir || fail=1 test -f $last_file/f && fail=1 rm .dirs -ls -A > ../out || fail=1 -test -s ../out && fail=1 +out=$(ls -A) || fail=1 +test -z "$out" || fail=1 (exit $fail); exit $fail |