##// END OF EJS Templates
tests: unify test-acl
tests: unify test-acl

File last commit:

r11536:92342fa9 stable
r11849:95a93161 default
Show More
test-rebase-mq
133 lines | 2.5 KiB | text/plain | TextLexer
Stefano Tortarolo
Add rebase extension
r6906 #!/bin/sh
Yuya Nishihara
tests: fix bashism to load helpers.sh...
r11208 . $TESTDIR/helpers.sh
Matt Mackall
rebase: use helpers.sh in tests
r11198
Stefano Tortarolo
Add rebase extension
r6906 echo "[extensions]" >> $HGRCPATH
echo "graphlog=" >> $HGRCPATH
echo "rebase=" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
Steve Losh
mq: add parent node IDs to MQ patches on qrefresh/qnew...
r10397 echo "[mq]" >> $HGRCPATH
echo "plain=true" >> $HGRCPATH
Patrick Mezard
test-rebase-mq: '|' is a GNU sed extension, unfold it
r6931 filterpatch()
{
sed -e "s/^\(# Date\).*/\1/" \
-e "s/^\(# Node ID\).*/\1/" \
-e "s/^\(# Parent\).*/\1/" \
-e "s/^\(diff -r \)\([a-f0-9]* \)\(-r \)\([a-f0-9]* \)/\1x \3y /" \
Stefano Tortarolo
rebase: keep original mq patch format (Issue1574)...
r7955 -e "s/^\(diff -r \)\([a-f0-9]* \)/\1x /" \
Patrick Mezard
test-rebase-mq: '|' is a GNU sed extension, unfold it
r6931 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" \
-e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/"
}
Stefano Tortarolo
Add rebase extension
r6906 hg init a
cd a
hg qinit -c # This must work even with a managed mq queue
echo 'c1' > f
hg add f
Martin Geisler
tests: removed redundant "-u test" from test scripts...
r8168 hg commit -d '0 0' -m "C1"
Stefano Tortarolo
Add rebase extension
r6906
echo 'r1' > f
Martin Geisler
tests: removed redundant "-u test" from test scripts...
r8168 hg commit -d '2 0' -m "R1"
Stefano Tortarolo
Add rebase extension
r6906
hg up 0
hg qnew f.patch
echo 'mq1' > f
hg qref -m 'P0'
hg qnew f2.patch
echo 'mq2' > f
hg qref -m 'P1'
hg glog --template '{rev} {desc} tags: {tags}\n'
echo
echo '% Rebase - try to rebase on an applied mq patch'
hg rebase -s 1 -d 3
echo
Greg Ward
rebase: always check if rebasing onto an applied mq patch....
r10672 echo '% Rebase - same thing, but mq patch is default dest'
hg update -q 1
hg rebase
hg update -q qtip
echo
Stefano Tortarolo
Add rebase extension
r6906 echo '% Rebase - generate a conflict'
hg rebase -s 2 -d 1
echo
echo '% Fix the 1st conflict'
echo 'mq1r1' > f
hg resolve -m f
Matt Mackall
rebase: use helpers.sh in tests
r11198 hg rebase -c | hidebackup
Stefano Tortarolo
Add rebase extension
r6906
echo
echo '% Fix the 2nd conflict'
echo 'mq1r1mq2' > f
hg resolve -m f
Matt Mackall
rebase: use helpers.sh in tests
r11198 hg rebase -c | hidebackup
Stefano Tortarolo
Add rebase extension
r6906
hg glog --template '{rev} {desc} tags: {tags}\n'
echo
echo '% Update to qbase'
hg up qbase
echo '% f correctly reflects the merge result'
cat f
echo '% And the patch is correct'
Patrick Mezard
test-rebase-mq: '|' is a GNU sed extension, unfold it
r6931 cat .hg/patches/f.patch | filterpatch
Stefano Tortarolo
Add rebase extension
r6906
echo
echo '% Update to qtip'
hg up qtip
echo '% f correctly reflects the merge result'
cat f
echo '% And the patch is correct'
Patrick Mezard
test-rebase-mq: '|' is a GNU sed extension, unfold it
r6931 cat .hg/patches/f2.patch | filterpatch
Stefano Tortarolo
rebase: keep original mq patch format (Issue1574)...
r7955 echo
echo '% Adding one git-style patch and one normal'
hg qpop -a
rm -fr .hg/patches
hg qinit -c
hg up 0
hg qnew --git f_git.patch
echo 'mq1' > p
hg add p
hg qref --git -m 'P0 (git)'
hg qnew f.patch
echo 'mq2' > p
hg qref -m 'P1'
Giorgos Keramidas
rebase: add a test for committed MQ patches (59bd20451ab6)
r11536 hg qcommit -m 'save patch state'
echo '% patch series step 1/2'
hg qseries -s
echo '% patch queue manifest step 1/2'
hg -R .hg/patches manifest
Stefano Tortarolo
rebase: keep original mq patch format (Issue1574)...
r7955
echo '% Git patch'
cat .hg/patches/f_git.patch | filterpatch
echo
echo '% Normal patch'
cat .hg/patches/f.patch | filterpatch
echo
echo '% Rebase the applied mq patches'
Matt Mackall
rebase: use helpers.sh in tests
r11198 hg rebase -s 2 -d 1 --quiet
Giorgos Keramidas
rebase: add a test for committed MQ patches (59bd20451ab6)
r11536 hg qcommit -m 'save patch state'
echo '% patch series step 2/2'
hg qseries -s
echo '% patch queue manifest step 2/2'
hg -R .hg/patches manifest
Stefano Tortarolo
rebase: keep original mq patch format (Issue1574)...
r7955
echo '% And the patches are correct'
echo '% Git patch'
cat .hg/patches/f_git.patch | filterpatch
echo
echo '% Normal patch'
cat .hg/patches/f.patch | filterpatch