view tests/test-convert-hg-sink @ 9336:dd6f605b15c0

mq: upgrade the patch to HG format when adding the author name with qrefresh When setting the author field with qrefresh (-u|-U), and the patch does have neither a 'From:' nor a '# User' header, add the author name as such: - if the patch has a 'Date:' header, add a 'From:' header - otherwise, upgrade to Mercurial extended patch format and add # From
author Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
date Wed, 12 Aug 2009 10:48:18 +0200
parents 68e0a55eee6e
children
line wrap: on
line source

#!/bin/sh

cat >> $HGRCPATH <<EOF
[extensions]
convert=
[convert]
hg.saverev=False
EOF

hg init orig
cd orig
echo foo > foo
echo bar > bar
hg ci -qAm 'add foo and bar'

hg rm foo
hg ci -m 'remove foo'

mkdir foo
echo file > foo/file
hg ci -qAm 'add foo/file'

hg tag some-tag

hg log
cd ..

hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new
hg out ../orig

echo '% dirstate should be empty:'
hg debugstate
hg parents -q

hg up -C
hg copy bar baz
echo '% put something in the dirstate:'
hg debugstate > debugstate
grep baz debugstate

echo '% add a new revision in the original repo'
cd ../orig
echo baz > baz
hg ci -qAm 'add baz'

cd ..
hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new
hg out ../orig
echo '% dirstate should be the same (no output below):'
hg debugstate > new-debugstate
diff debugstate new-debugstate

echo '% no copies'
hg up -C
hg debugrename baz
cd ..

echo '% test tag rewriting'
cat > filemap <<EOF
exclude foo
EOF
hg convert --filemap filemap orig new-filemap 2>&1 | grep -v 'subversion python bindings could not be loaded'
cd new-filemap
hg tags
cd ..