Mercurial > hg
view tests/test-convert-bzr @ 11628:68a30daead3f stable
inotify: make inotifydirstate.status() returns a tuple of lists.
This makes it consistent with dirstate.status(), which is important if
there are other extensions messing with the output of status(). Those
extensions can safely assume that dirstate.status() returns a tuple of
lists, because its docstring says it does. But
inotifystatus.dirstate() returns a list of lists, which can break
those other extensions.
author | Greg Ward <greg-hg@gerg.ca> |
---|---|
date | Tue, 20 Jul 2010 14:00:47 -0400 |
parents | dd24488cba2d |
children |
line wrap: on
line source
#!/bin/sh . "$TESTDIR/bzr-definitions" echo % create and rename on the same file in the same step mkdir test-createandrename cd test-createandrename bzr init -q source cd source echo a > a echo c > c echo e > e bzr add -q a c e bzr commit -q -m 'Initial add: a, c, e' bzr mv a b bzr mv c d bzr mv e f echo a2 >> a mkdir e bzr add -q a e bzr commit -q -m 'rename a into b, create a, rename c into d' cd .. hg convert source source-hg glog -R source-hg echo "% manifest" hg manifest -R source-hg -r tip echo "% test --rev option" hg convert -r 1 source source-1-hg glog -R source-1-hg echo "% test with filemap" cat > filemap <<EOF exclude a EOF hg convert --filemap filemap source source-filemap-hg hg -R source-filemap-hg manifest -r tip echo '% convert from lightweight checkout' bzr checkout --lightweight source source-light hg convert source-light source-light-hg echo "% lightweight manifest" hg manifest -R source-light-hg -r tip # extract timestamps that look just like hg's {date|isodate}: # yyyy-mm-dd HH:MM zzzz (no seconds!) echo "% compare timestamps" cd source bzr log | \ sed '/timestamp/!d;s/.\{15\}\([0-9: -]\{16\}\):.. \(.[0-9]\{4\}\)/\1 \2/' \ > ../bzr-timestamps cd .. hg -R source-hg log --template "{date|isodate}\n" > hg-timestamps if diff -q bzr-timestamps hg-timestamps ; then echo "good: hg timestamps match bzr timestamps" else echo "fail: bzr timestamps are:" cat bzr-timestamps echo "but hg timestamps are:" cat hg-timestamps fi cd .. echo % merge mkdir test-merge cd test-merge cat > helper.py <<EOF import sys from bzrlib import workingtree wt = workingtree.WorkingTree.open('.') message, stamp = sys.argv[1:] wt.commit(message, timestamp=int(stamp)) EOF bzr init -q source cd source echo content > a echo content2 > b bzr add -q a b bzr commit -q -m 'Initial add' cd .. bzr branch -q source source-improve cd source echo more >> a python ../helper.py 'Editing a' 100 cd ../source-improve echo content3 >> b python ../helper.py 'Editing b' 200 cd ../source bzr merge -q ../source-improve bzr commit -q -m 'Merged improve branch' cd .. hg convert --datesort source source-hg glog -R source-hg cd .. echo % symlinks and executable files mkdir test-symlinks cd test-symlinks bzr init -q source cd source touch program chmod +x program ln -s program altname mkdir d echo a > d/a ln -s a syma bzr add -q altname program syma d/a bzr commit -q -m 'Initial setup' touch newprog chmod +x newprog rm altname ln -s newprog altname chmod -x program bzr add -q newprog bzr commit -q -m 'Symlink changed, x bits changed' cd .. hg convert source source-hg manifest source-hg 0 manifest source-hg tip cd source-hg echo % test the symlinks can be recreated hg up hg cat syma cd ../..