summaryrefslogtreecommitdiff
path: root/tests/touch/empty-file
blob: e77d3409ecf4d1435137a216b895f1214fe6fee4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
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.

: ${TOUCH_DIR_LIST=.}

framework_failure=0

for d in $TOUCH_DIR_LIST; 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 $TOUCH_DIR_LIST; 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 $TOUCH_DIR_LIST; 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