Mercurial > hg
view tests/test-rebase-collapse @ 11835:14db59e3b248 stable
convert: Test svn sink for a repo with tags.
This test case backs the fix in changeset 7e5f5e5858f9. The subversion
sink used to crash, if the source repo used tags.
author | Daniel J. Lauk <daniel.lauk@gmail.com> |
---|---|
date | Thu, 12 Aug 2010 11:15:33 +0200 |
parents | 2313dc4d9817 |
children |
line wrap: on
line source
#!/bin/sh . $TESTDIR/helpers.sh echo "[extensions]" >> $HGRCPATH echo "graphlog=" >> $HGRCPATH echo "rebase=" >> $HGRCPATH BASE=`pwd` addcommit () { echo $1 > $1 hg add $1 hg commit -d "${2} 0" -m $1 } commit () { hg commit -d "${2} 0" -m $1 } createrepo () { cd $BASE rm -rf a hg init a cd a addcommit "A" 0 addcommit "B" 1 addcommit "C" 2 addcommit "D" 3 hg update -C 0 addcommit "E" 4 hg update -C 0 addcommit "F" 5 hg merge -r 4 commit "G" 6 hg update -C 5 addcommit "H" 7 } createrepo > /dev/null 2>&1 hg glog --template '{rev}: {desc}\n' echo '% Rebasing B onto H' hg up -C 3 hg rebase --collapse --keepbranches | hidebackup hg glog --template '{rev}: {desc}\n' echo "Expected A, B, C, D, F, H" hg manifest createrepo > /dev/null 2>&1 echo echo '% Rebasing G onto H' hg rebase --base 6 --collapse | hidebackup hg glog --template '{rev}: {desc}\n' echo "Expected A, E, F, H" hg manifest createrepocomplex () { cd $BASE rm -rf a hg init a cd a addcommit "A" 0 addcommit "B" 1 hg up 0 addcommit "C" 2 hg merge commit "D" 3 hg up 1 addcommit "E" 4 addcommit "F" 5 hg merge commit "G" 6 hg up 0 addcommit "H" 7 } echo createrepocomplex > /dev/null 2>&1 hg glog --template '{rev}: {desc}\n' echo echo '% Rebase and collapse - more than one external (fail)' hg rebase -s 2 --collapse echo echo '% Rebase and collapse - E onto H' hg rebase -s 4 --collapse | hidebackup hg glog --template '{rev}: {desc}\n' echo "Expected A, B, C, E, F, H" hg manifest createrepocomplex () { cd $BASE rm -rf a hg init a cd a addcommit "A" 0 addcommit "B" 1 hg up 0 addcommit "C" 2 hg merge commit "D" 3 hg up 1 addcommit "E" 4 echo "F" > E commit "F" 5 addcommit "G" 6 hg merge commit "H" 7 hg up 0 addcommit "I" 8 } echo createrepocomplex > /dev/null 2>&1 hg glog --template '{rev}: {desc}\n' echo echo '% Rebase and collapse - E onto I' hg rebase -s 4 --collapse | hidebackup hg glog --template '{rev}: {desc}\n' echo "Expected A, B, C, E, G, I" hg manifest echo 'Cat E:' cat E createrepocomplex () { cd $BASE rm -rf a hg init a cd a addcommit "A" 0 addcommit "B" 1 addcommit "C" 2 hg up 1 addcommit "D" 3 hg merge commit "E" 4 hg up 0 addcommit "F" 5 } echo createrepocomplex > /dev/null 2>&1 hg glog --template '{rev}: {desc}\n' echo echo '% Rebase and collapse - B onto F' hg rebase -s 1 --collapse | hidebackup hg glog --template '{rev}: {desc}\n' echo "Expected A, B, C, D, F" hg manifest exit 0