functionality-test-suite-20020114
[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