Mercurial > hgsubversion
changeset 635:e2c3349b2cca
branchmap: map empty commits in replay mode.
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Sat, 10 Jul 2010 14:19:24 +0200 |
parents | a400f3bf5611 |
children | d4f433ee709a |
files | hgsubversion/replay.py tests/fixtures/propset-branch.svndump tests/test_fetch_mappings.py |
diffstat | 3 files changed, 163 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/hgsubversion/replay.py +++ b/hgsubversion/replay.py @@ -198,9 +198,7 @@ def convert_rev(ui, meta, svn, r, tbdelt 'Please report this issue.') extra = meta.genextra(rev.revnum, branch) - - if not meta.usebranchnames: - extra.pop('branch', None) + meta.mapbranch(extra) current_ctx = context.memctx(meta.repo, (ha, node.nullid),
new file mode 100644 --- /dev/null +++ b/tests/fixtures/propset-branch.svndump @@ -0,0 +1,145 @@ +SVN-fs-dump-format-version: 2 + +UUID: 6506bfb9-9ce8-4b91-8357-4dc8bef2ecc6 + +Revision-number: 0 +Prop-content-length: 56 +Content-length: 56 + +K 8 +svn:date +V 27 +2010-07-10T11:55:08.483993Z +PROPS-END + +Revision-number: 1 +Prop-content-length: 122 +Content-length: 122 + +K 7 +svn:log +V 21 +create initial layout +K 10 +svn:author +V 6 +danchr +K 8 +svn:date +V 27 +2010-07-10T11:55:57.419315Z +PROPS-END + +Node-path: branches +Node-kind: dir +Node-action: add +Prop-content-length: 10 +Content-length: 10 + +PROPS-END + + +Node-path: tags +Node-kind: dir +Node-action: add +Prop-content-length: 10 +Content-length: 10 + +PROPS-END + + +Node-path: trunk +Node-kind: dir +Node-action: add +Prop-content-length: 10 +Content-length: 10 + +PROPS-END + + +Revision-number: 2 +Prop-content-length: 111 +Content-length: 111 + +K 7 +svn:log +V 10 +add a file +K 10 +svn:author +V 6 +danchr +K 8 +svn:date +V 27 +2010-07-10T11:56:54.708286Z +PROPS-END + +Node-path: trunk/a.txt +Node-kind: file +Node-action: add +Prop-content-length: 10 +Text-content-length: 0 +Text-content-md5: d41d8cd98f00b204e9800998ecf8427e +Text-content-sha1: da39a3ee5e6b4b0d3255bfef95601890afd80709 +Content-length: 10 + +PROPS-END + + +Revision-number: 3 +Prop-content-length: 116 +Content-length: 116 + +K 7 +svn:log +V 15 +create a branch +K 10 +svn:author +V 6 +danchr +K 8 +svn:date +V 27 +2010-07-10T11:57:29.710978Z +PROPS-END + +Node-path: branches/the-branch +Node-kind: dir +Node-action: add +Node-copyfrom-rev: 2 +Node-copyfrom-path: trunk + + +Revision-number: 4 +Prop-content-length: 115 +Content-length: 115 + +K 7 +svn:log +V 14 +set a property +K 10 +svn:author +V 6 +danchr +K 8 +svn:date +V 27 +2010-07-10T11:58:41.440627Z +PROPS-END + +Node-path: branches/the-branch +Node-kind: dir +Node-action: change +Prop-content-length: 42 +Content-length: 42 + +K 12 +the-property +V 9 +something +PROPS-END + +
--- a/tests/test_fetch_mappings.py +++ b/tests/test_fetch_mappings.py @@ -134,5 +134,22 @@ class MapTests(test_util.TestBase): def test_branchmap_tagging_stupid(self): self.test_branchmap_tagging(True) + def test_branchmap_empty_commit(self, stupid=False): + '''test mapping an empty commit on a renamed branch''' + test_util.load_svndump_fixture(self.repo_path, 'propset-branch.svndump') + branchmap = open(self.branchmap, 'w') + branchmap.write("the-branch = bob\n") + branchmap.close() + ui = self.ui(stupid) + ui.setconfig('hgsubversion', 'branchmap', self.branchmap) + commands.clone(ui, test_util.fileurl(self.repo_path), + self.wc_path, branchmap=self.branchmap) + branches = set(self.repo[i].branch() for i in self.repo) + self.assertEquals(sorted(branches), ['bob', 'default']) + + def test_branchmap_empty_commit_stupid(self): + '''test mapping an empty commit on a renamed branch (stupid)''' + self.test_branchmap_empty_commit(True) + def suite(): return unittest.TestLoader().loadTestsFromTestCase(MapTests)