##// END OF EJS Templates
merge with crew-stable
merge with crew-stable

File last commit:

r4137:26596a6b default
r4181:ac9e891f merge default
Show More
test-symlinks
72 lines | 1.5 KiB | text/plain | TextLexer
Matthew Elder
symlink unit test
r1408 #!/bin/sh
#Test bug regarding symlinks that showed up in hg 0.7
#Author: Matthew Elder <sseses@gmail.com>
#make and initialize repo
hg init test; cd test;
#make a file and a symlink
touch foo; ln -s foo bar;
#import with addremove -- symlink walking should _not_ screwup.
hg addremove
#commit -- the symlink should _not_ appear added to dir state
hg commit -m 'initial'
#add a new file so hg will let me commit again
touch bomb
#again, symlink should _not_ show up on dir state
hg addremove
#Assert screamed here before, should go by without consequence
hg commit -m 'is there a bug?'
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487
Thomas Arendsen Hein
Don't use -f for rm in tests where not needed. Drop /bin/ from /bin/rm.
r3988 cd .. ; rm -r test
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487 hg init test; cd test;
mkdir dir
touch a.c dir/a.o dir/b.o
# test what happens if we want to trick hg
hg commit -A -m 0
echo "relglob:*.o" > .hgignore
rm a.c
rm dir/a.o
rm dir/b.o
mkdir dir/a.o
Thomas Arendsen Hein
Compatibility fix for 'ln -sf'....
r3750 ln -s nonexist dir/b.o
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487 mkfifo a.c
Thomas Arendsen Hein
Adjusted all but one test output for the new behaviour of localrepo.changes()
r1620 # it should show a.c, dir/a.o and dir/b.o deleted
Benoit Boissinot
fix handling of files of unsupported type in the walk code...
r1487 hg status
Benoit Boissinot
don't print anything about file of unsupported type unless...
r1527 hg status a.c
Jim Meyering
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
r2115
echo '# test absolute path through symlink outside repo'
cd ..
p=`pwd`
hg init x
ln -s x y
cd x
touch f
hg add f
hg status $p/y/f
echo '# try symlink outside repo to file inside'
ln -s x/f ../z
# this should fail
hg status ../z && { echo hg mistakenly exited with status 0; exit 1; } || :
Giorgos Keramidas
Create the parent directory when checking out symlinks.
r4137
cd .. ; rm -r test
hg init test; cd test;
echo '# try cloning symlink in a subdir'
echo '1. commit a symlink'
mkdir -p a/b/c
cd a/b/c
ln -s /path/to/symlink/source demo
cd ../../..
hg stat
hg commit -A -m 'add symlink in a/b/c subdir'
echo '2. clone it'
cd ..
hg clone test testclone