summaryrefslogtreecommitdiff
path: root/tests/touch/empty-file
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1998-07-18 13:51:11 +0000
committerJim Meyering <jim@meyering.net>1998-07-18 13:51:11 +0000
commit7fc23ef6256019a86d12b6303d36297f49ad1031 (patch)
treea2e82e30c8a1853c7d4d0979fff4f491f1aa5533 /tests/touch/empty-file
parent1bd7deb235900838c41c960b314198314cf50c0e (diff)
downloadcoreutils-7fc23ef6256019a86d12b6303d36297f49ad1031.tar.xz
.
Diffstat (limited to 'tests/touch/empty-file')
-rwxr-xr-xtests/touch/empty-file49
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/touch/empty-file b/tests/touch/empty-file
new file mode 100755
index 000000000..8dcc49dd9
--- /dev/null
+++ b/tests/touch/empty-file
@@ -0,0 +1,49 @@
+#!/bin/sh
+# Make sure touch can set the mtime on an empty file.
+# Volker Borchert reported that touch 3.16r (and presumably all before that)
+# fails to work on SunOS 4.1.3 with `most of the recommended patches' when
+# the empty file is on an NFS-mounted 4.2 volume.
+
+: ${RM=rm}
+: ${TOUCH=touch}
+
+if test "$VERBOSE" = yes; then
+ set -x
+ $TOUCH --version
+fi
+
+# FIXME: find writable directories on other partitions
+# and run the test in those directories, too.
+
+dirs=.
+
+framework_failure=0
+
+for d in $dirs; do
+ rm -rf $d/a $d/b
+ : > $d/a || framework_failure=1
+ : > $d/b || framework_failure=1
+done
+
+if test $framework_failure = 1; then
+ echo 'failure in testing framework'
+ exit 1
+fi
+
+sleep 2
+for d in $dirs; do
+ $TOUCH $d/a || fail=1
+ set x `$LS -t $d/a $d/b`
+ test "$*" = "x $d/a $d/b" || fail=1
+done
+
+sleep 2
+for d in $dirs; do
+ $TOUCH $d/b
+ set x `$LS -t $d/a $d/b`
+ test "$*" = "x $d/b $d/a" || fail=1
+
+ $RM -rf $d/a $d/b
+done
+
+exit $fail