Mercurial > hg-stable
view tests/test-mq-qimport @ 12462:da2cfdc33fe8
tests: unify test-mq-header-from
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:43:21 -0500 |
parents | 84fb29f5e0d2 |
children |
line wrap: on
line source
#!/bin/sh cat > writelines.py <<EOF import sys path = sys.argv[1] args = sys.argv[2:] assert (len(args) % 2) == 0 f = file(path, 'wb') for i in xrange(len(args)/2): count, s = args[2*i:2*i+2] count = int(count) s = s.decode('string_escape') f.write(s*count) f.close() EOF echo "[extensions]" >> $HGRCPATH echo "mq=" >> $HGRCPATH echo "[diff]" >> $HGRCPATH echo "git=1" >> $HGRCPATH hg init repo cd repo echo % qimport non-existing-file hg qimport non-existing-file echo % import email hg qimport --push -n email - <<EOF From: Username in email <test@example.net> Subject: [PATCH] Message in email Date: Fri, 02 Jan 1970 00:00:00 +0000 Text before patch. # HG changeset patch # User Username in patch <test@example.net> # Date 0 0 # Node ID 1a706973a7d84cb549823634a821d9bdf21c6220 # Parent 0000000000000000000000000000000000000000 First line of commit message. More text in commit message. --- confuse the diff detection diff --git a/x b/x new file mode 100644 --- /dev/null +++ b/x @@ -0,0 +1,1 @@ +new file Text after patch. EOF echo % hg tip -v hg tip -v hg qpop hg qdelete email echo % import URL echo foo >> foo hg add foo hg diff > $HGTMP/url.diff hg revert --no-backup foo rm foo # Under unix: file:///foobar/blah # Under windows: file:///c:/foobar/blah patchurl=`echo "$HGTMP"/url.diff | tr '\\\\' /` expr "$patchurl" : "\/" > /dev/null if [ $? -ne 0 ]; then patchurl="/$patchurl" fi hg qimport file://"$patchurl" hg qun echo % import patch that already exists echo foo2 >> foo hg add foo hg diff > ../url.diff hg revert --no-backup foo rm foo hg qimport ../url.diff hg qpush cat foo hg qpop echo % qimport -f hg qimport -f ../url.diff hg qpush cat foo hg qpop echo % build diff with CRLF python ../writelines.py b 5 'a\n' 5 'a\r\n' hg ci -Am addb python ../writelines.py b 2 'a\n' 10 'b\n' 2 'a\r\n' hg diff > b.diff hg up -C echo % qimport CRLF diff hg qimport b.diff hg qpush echo % try to import --push echo another >> b hg diff > another.diff hg up -C hg qimport --push another.diff hg qfin -a hg qimport -rtip -P hg qpop -a hg qdel -k 2.diff echo % qimport -e hg qimport -e 2.diff hg qdel -k 2.diff echo % qimport -e --name newname oldexisitingpatch hg qimport -e --name this-name-is-better 2.diff hg qser echo % qimport -e --name without --force cp .hg/patches/this-name-is-better .hg/patches/3.diff hg qimport -e --name this-name-is-better 3.diff hg qser echo % qimport -e --name with --force hg qimport --force -e --name this-name-is-better 3.diff hg qser