1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-08-09 02:04:06 +02:00

Use GNU touch to work around problems with NFS caching and/or clock skew.

This commit is contained in:
Jim Meyering
1998-01-22 08:27:16 +00:00
parent 9cdd2e05e6
commit 14a2593daf
+34 -19
View File
@@ -2,6 +2,7 @@
# Test some of ls's sorting options.
: ${LS=ls}
: ${TOUCH=touch}
test=time-1
if test "$VERBOSE" = yes; then
@@ -11,25 +12,41 @@ fi
tmp=t-ls.$$
# We're going to LS from a subdir. Prepend ../ if $LS is not an
# absolute file name.
# We're going to run LS from a subdir.
# Prepend ../ if $LS is a relative file name.
case $LS in
/*) ;;
*) LS=../$LS
*/*) LS=../$LS
esac
case $TOUCH in
/*) ;;
*/*) TOUCH=../$TOUCH
esac
test_failure=0
mkdir $tmp || test_failure=1
cd $tmp || test_failure=1
: > a || test_failure=1
sleep 1
: > b || test_failure=1
: > c || test_failure=1
sleep 1
cat a || test_failure=1
t1='1998-01-15 21:00'
t2='1998-01-15 22:00'
t3='1998-01-15 23:00'
mv c d || test_failure=1
u1='1998-01-14 11:00'
u2='1998-01-14 12:00'
u3='1998-01-14 13:00'
$TOUCH -m -d "$t3" a || test_failure=1
$TOUCH -m -d "$t2" b || test_failure=1
$TOUCH -m -d "$t1" d || test_failure=1
$TOUCH -a -d "$u1" a || test_failure=1
$TOUCH -a -d "$u2" b || test_failure=1
$TOUCH -a -d "$u3" d || test_failure=1
sleep 5
mv d c || test_failure=1
if test $test_failure = 1; then
echo 'failure in testing framework'
@@ -38,17 +55,15 @@ fi
fail=0
# A was accessed more recently.
set `$LS -u a b`
test "$*" = 'a b' && : || fail=1
set `$LS -u a b c`
test "$*" = 'c b a' && : || fail=1
# B was modified more recently.
set `$LS -t a b`
test "$*" = 'b a' && : || fail=1
set `$LS -t a b c`
test "$*" = 'a b c' && : || fail=1
# D has newer ctime.
set `$LS -c a d`
test "$*" = 'd a' && : || fail=1
# C has newer ctime.
set `$LS -c a c`
test "$*" = 'c a' && : || fail=1
cd ..
rm -rf $tmp