Mercurial > hg
view tests/test-convert-bzr @ 8564:6b9ec23b09fc
named branches: improve pre-push logic (issue736)
Each named branch is considered separately, and the push is allowed if
no new branch heads are created for any named branch to be pushed.
Due to some tests's use of --debug, their output will change after this
addition. This has been fixed as well.
Co-contributor: Henrik Stuart <henrik.stuart@edlund.dk>
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Sat, 23 May 2009 17:04:31 +0200 |
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 ../..