Mercurial > hgsubversion
diff tests/test_fetch_mappings.py @ 639:b2c8c2079822
tests: add test for combining two branches using the branchmap
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Tue, 13 Jul 2010 13:18:08 +0200 |
parents | d4f433ee709a |
children | 67513cca972f |
line wrap: on
line diff
--- a/tests/test_fetch_mappings.py +++ b/tests/test_fetch_mappings.py @@ -152,6 +152,31 @@ class MapTests(test_util.TestBase): '''test mapping an empty commit on a renamed branch (stupid)''' self.test_branchmap_empty_commit(True) + def test_branchmap_combine(self, stupid=False): + '''test combining two branches, but retaining heads''' + test_util.load_svndump_fixture(self.repo_path, 'branchmap.svndump') + branchmap = open(self.branchmap, 'w') + branchmap.write("badname = default\n") + branchmap.write("feature = default\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), ['default']) + self.assertEquals(len(self.repo.heads()), 2) + self.assertEquals(len(self.repo.branchheads('default')), 2) + + # test that the mapping does not affect branch info + branches = self.repo.svnmeta().branches + self.assertEquals(sorted(branches.keys()), + [None, 'badname', 'feature']) + + def test_branchmap_combine_stupid(self): + '''test combining two branches, but retaining heads (stupid)''' + self.test_branchmap_combine(True) + def test_branchmap_no_replacement(self): ''' test that empty mappings are rejected