Added a test combining -H with -c and a hard-linked file that has only
authorWayne Davison <wayned@samba.org>
Tue, 4 Sep 2007 06:57:57 +0000 (06:57 +0000)
committerWayne Davison <wayned@samba.org>
Tue, 4 Sep 2007 06:57:57 +0000 (06:57 +0000)
one instance inside the copy hierarchy.  (Used to fail with protocol 29
or --no-ir.)

testsuite/hardlinks.test

index c9a4d72..e41d990 100644 (file)
@@ -11,6 +11,8 @@
 
 . "$suitedir/rsync.fns"
 
+outfile="$scratchdir/rsync.out"
+
 # Build some hardlinks
 
 fromdir="$scratchdir/from"
@@ -50,6 +52,14 @@ checkit "$RSYNC -aHivv --link-dest='$todir' '$fromdir/' '$chkdir/'" "$todir" "$c
 rm -rf "$chkdir"
 checkit "$RSYNC -aHivv --copy-dest='$todir' '$fromdir/' '$chkdir/'" "$fromdir" "$chkdir"
 
+# Create a hard link that has only one part in the hierarchy.
+echo "This is another file" >"$fromdir/solo"
+ln "$fromdir/solo" "$chkdir/solo" || fail "Can't create hardlink"
+
+# Make sure that the checksum data doesn't slide due to an HLINK_BUMP() change.
+$RSYNC -aHivc "$fromdir/" "$chkdir/" | tee "$outfile"
+grep solo "$outfile" && test_fail "Erroneous copy of solo file occurred!"
+
 # Make sure there's nothing wrong with sending a single file with -H
 # enabled (this has broken twice so far, so we need this test).
 rm -rf "$todir"