summaryrefslogtreecommitdiff
path: root/testsuite/hands.test
blob: 6ed46f2c605f8af0057cb61d20865189c2334ce0 (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
#!/bin/sh

# Copyright (C) 1998, 1999 by Philip Hands <phil@hands.com>
# Copyright (C) 2001, 2002 by Martin Pool <mbp@samba.org>
#
# This program is distributable under the terms of the GNU GPL (see COPYING)

. "$suitedir/rsync.fns"

hands_setup

# Main script starts here

runtest "basic operation" 'checkit "$RSYNC -av \"$fromdir/\" \"$todir\"" "$fromdir/" "$todir"'

ln "$fromdir/filelist" "$fromdir/dir"
runtest "hard links" 'checkit "$RSYNC -avH \"$fromdir/\" \"$todir\"" "$fromdir/" "$todir"'

rm "$todir/text"
runtest "one file" 'checkit "$RSYNC -avH \"$fromdir/\" \"$todir\"" "$fromdir/" "$todir"'

echo "extra line" >> "$todir/text"
runtest "extra data" 'checkit "$RSYNC -avH --no-whole-file \"$fromdir/\" \"$todir\"" "$fromdir/" "$todir"'

cp "$fromdir/text" "$todir/ThisShouldGo"
runtest " --delete" 'checkit "$RSYNC --delete -avH \"$fromdir/\" \"$todir\"" "$fromdir/" "$todir"'

cd "$tmpdir"
rm -rf to from/*dir

# Do the real copy, touch up the parent-dir's time, and then check the copy.
$RSYNC -av from/* to/
checkit "$RSYNC -av --exclude='*' from/ to/" "$fromdir" "$todir"

# The script would have aborted on error, so getting here means we've won.
exit 0