Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / src / tests / compare-with-local
1 #!/bin/sh
2 # $Id$
3 #################################################################
4 #
5 # Copy file back and forth between $TMPDIR (defaults to /tmp)
6 # which is hopefully on local disk or any other well tested
7 # file system and the filesystem we want to test (in $PWD).
8 #
9 #################################################################
10
11 test $SHELLVERBOSE && set $SHELLVERBOSE
12
13 function compare () {
14 if cmp $1 $2; then
15 :
16 else
17 diff $1 $2
18 exit 1
19 fi
20 }
21
22 test $TMPDIR || TMPDIR=/tmp
23 TMPDIR=$TMPDIR/compare-with-local-$$
24 mkdir $TMPDIR || exit 1
25
26 # Generate test file
27 cat > $TMPDIR/bar << EOF
28 This is an arla temporary test file.
29 You may remove it any time.
30 Kontrollen blinkar blÄ.
31 EOF
32
33 cp $TMPDIR/bar bar
34 compare $TMPDIR/bar bar
35 mv bar $TMPDIR/bas
36 compare $TMPDIR/bar $TMPDIR/bas
37 # this is for later overwrite test
38 test -f bar && echo bar should not exist && exit 1
39 cp $TMPDIR/bar bar
40 compare $TMPDIR/bar bar
41 cat $TMPDIR/bas > bat
42 compare $TMPDIR/bar bat
43 cat bat > $TMPDIR/bau
44 compare $TMPDIR/bar $TMPDIR/bau
45 mv $TMPDIR/bau bav
46 compare $TMPDIR/bar bav
47 # this is for later overwrite test
48 test -f $TMPDIR/bau && echo $TMPDIR/bau should not exist && exit 1
49 cp $TMPDIR/bar $TMPDIR/bau
50 cp bav $TMPDIR/baw
51 compare $TMPDIR/bar $TMPDIR/baw
52
53 # If we get so far we can write new files.
54 # Now test overwrite.
55
56 # Generate test file slightly different
57 cat > $TMPDIR/bar << EOF
58 This is an arla temporary test file.
59 You may remove it any time.
60 Mera jul.
61 EOF
62
63 cp $TMPDIR/bar bar
64 compare $TMPDIR/bar bar
65 mv bar $TMPDIR/bas
66 compare $TMPDIR/bar $TMPDIR/bas
67 cat $TMPDIR/bas > bat
68 compare $TMPDIR/bar bat
69 cat bat > $TMPDIR/bau
70 compare $TMPDIR/bar $TMPDIR/bau
71 mv $TMPDIR/bau bav
72 compare $TMPDIR/bar bav
73 cp bav $TMPDIR/baw
74 compare $TMPDIR/bar $TMPDIR/baw
75
76 ${objdir}/rm-rf $TMPDIR
77 exit 0