Mercurial > public > mercurial-scm > hg
diff tests/test-largefiles.t @ 15369:b4ea79f88268 stable
largefiles: bugfix for symlink handling with testcase
The code was using the size of a symlink's target, thus wrongly making symlinks
to large files into largefiles themselves. This can be demonstrated by
deleting the symlink and then doing an 'hg up' or 'hg up -C' to restore the
symlink.
author | Eli Carter <eli.carter@tektronix.com> |
---|---|
date | Wed, 26 Oct 2011 13:48:33 -0500 |
parents | 06b8db3f25c6 |
children | 8af6c6d91c92 |
line wrap: on
line diff
--- a/tests/test-largefiles.t Wed Oct 26 12:56:27 2011 -0500 +++ b/tests/test-largefiles.t Wed Oct 26 13:48:33 2011 -0500 @@ -852,3 +852,26 @@ 1 largefiles updated, 0 removed $ cd .. $ HOME="$ORIGHOME" + +Symlink to a large largefile should behave the same as a symlink to a normal file + $ hg init largesymlink + $ cd largesymlink + $ dd if=/dev/zero bs=1k count=10k of=largefile 2>/dev/null + $ hg add --large largefile + $ hg commit -m "commit a large file" + $ ln -s largefile largelink + $ hg add largelink + $ hg commit -m "commit a large symlink" + $ rm -f largelink + $ hg up >/dev/null + $ test -e largelink + [1] + $ test -L largelink + [1] + $ rm -f largelink # make next part of the test independent of the previous + $ hg up -C >/dev/null + $ test -e largelink + $ test -L largelink + $ cd .. + +