summaryrefslogtreecommitdiff
path: root/tests/test_fetch_mappings.py
diff options
context:
space:
mode:
authorQijiang Fan <fqj1994@gmail.com>2012-06-08 17:42:38 +0800
committerQijiang Fan <fqj1994@gmail.com>2012-06-08 17:42:38 +0800
commit41ab46d551a1287a4dfb60d04e132af468923d95 (patch)
treee3523593e894b9ae7dffb9e57856b5909096737c /tests/test_fetch_mappings.py
parent4d96cae645ca33d56b4a4961f2b59bef82773b58 (diff)
Upstream version 1.4
Diffstat (limited to 'tests/test_fetch_mappings.py')
-rw-r--r--tests/test_fetch_mappings.py84
1 files changed, 51 insertions, 33 deletions
diff --git a/tests/test_fetch_mappings.py b/tests/test_fetch_mappings.py
index 83149ef..02727f6 100644
--- a/tests/test_fetch_mappings.py
+++ b/tests/test_fetch_mappings.py
@@ -32,14 +32,14 @@ class MapTests(test_util.TestBase):
return os.path.join(self.tmpdir, 'tagmap')
def test_author_map(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path, 'replace_trunk_with_branch.svndump')
+ repo_path = self.load_svndump('replace_trunk_with_branch.svndump')
authormap = open(self.authors, 'w')
authormap.write('Augie=Augie Fackler <durin42@gmail.com> # stuffy\n')
authormap.write("Augie Fackler <durin42@gmail.com>\n")
authormap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'authormap', self.authors)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, authors=self.authors)
self.assertEqual(self.repo[0].user(),
'Augie Fackler <durin42@gmail.com>')
@@ -50,13 +50,13 @@ class MapTests(test_util.TestBase):
self.test_author_map(True)
def test_author_map_closing_author(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path, 'replace_trunk_with_branch.svndump')
+ repo_path = self.load_svndump('replace_trunk_with_branch.svndump')
authormap = open(self.authors, 'w')
authormap.write("evil=Testy <test@test>")
authormap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'authormap', self.authors)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, authors=self.authors)
self.assertEqual(self.repo[0].user(),
'Augie@5b65bade-98f3-4993-a01f-b7a6710da339')
@@ -67,7 +67,8 @@ class MapTests(test_util.TestBase):
self.test_author_map_closing_author(True)
def test_author_map_no_author(self, stupid=False):
- self._load_fixture_and_fetch('no-author.svndump', stupid=stupid)
+ repo, repo_path = self.load_and_fetch('no-author.svndump',
+ stupid=stupid)
users = set(self.repo[r].user() for r in self.repo)
expected_users = ['(no author)@%s' % self.repo.svnmeta().uuid]
self.assertEqual(sorted(users), expected_users)
@@ -78,7 +79,7 @@ class MapTests(test_util.TestBase):
authormap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'authormap', self.authors)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, authors=self.authors)
users = set(self.repo[r].user() for r in self.repo)
expected_users = ['Testy <test@example.com>']
@@ -100,13 +101,13 @@ class MapTests(test_util.TestBase):
self.assertEqual(fromself.symmetric_difference(all_tests), set())
def test_file_map(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path, 'replace_trunk_with_branch.svndump')
+ repo_path = self.load_svndump('replace_trunk_with_branch.svndump')
filemap = open(self.filemap, 'w')
filemap.write("include alpha\n")
filemap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'filemap', self.filemap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, filemap=self.filemap)
self.assertEqual(node.hex(self.repo[0].node()), '88e2c7492d83e4bf30fbb2dcbf6aa24d60ac688d')
self.assertEqual(node.hex(self.repo['default'].node()), 'e524296152246b3837fe9503c83b727075835155')
@@ -116,13 +117,13 @@ class MapTests(test_util.TestBase):
self.assertRaises(hgutil.Abort, self.test_file_map, True)
def test_file_map_exclude(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path, 'replace_trunk_with_branch.svndump')
+ repo_path = self.load_svndump('replace_trunk_with_branch.svndump')
filemap = open(self.filemap, 'w')
filemap.write("exclude alpha\n")
filemap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'filemap', self.filemap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, filemap=self.filemap)
self.assertEqual(node.hex(self.repo[0].node()), '2c48f3525926ab6c8b8424bcf5eb34b149b61841')
self.assertEqual(node.hex(self.repo['default'].node()), 'b37a3c0297b71f989064d9b545b5a478bbed7cc1')
@@ -131,15 +132,34 @@ class MapTests(test_util.TestBase):
# TODO: re-enable test if we ever reinstate this feature
self.assertRaises(hgutil.Abort, self.test_file_map_exclude, True)
+ def test_file_map_rule_order(self):
+ repo_path = self.load_svndump('replace_trunk_with_branch.svndump')
+ filemap = open(self.filemap, 'w')
+ filemap.write("exclude alpha\n")
+ filemap.write("include .\n")
+ filemap.write("exclude gamma\n")
+ filemap.close()
+ ui = self.ui(False)
+ ui.setconfig('hgsubversion', 'filemap', self.filemap)
+ commands.clone(ui, test_util.fileurl(repo_path),
+ self.wc_path, filemap=self.filemap)
+ # The exclusion of alpha is overridden by the later rule to
+ # include all of '.', whereas gamma should remain excluded
+ # because it's excluded after the root directory.
+ self.assertEqual(self.repo[0].manifest().keys(),
+ ['alpha', 'beta'])
+ self.assertEqual(self.repo['default'].manifest().keys(),
+ ['alpha', 'beta'])
+
def test_branchmap(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path, 'branchmap.svndump')
+ repo_path = self.load_svndump('branchmap.svndump')
branchmap = open(self.branchmap, 'w')
branchmap.write("badname = good-name # stuffy\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),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, branchmap=self.branchmap)
branches = set(self.repo[i].branch() for i in self.repo)
self.assert_('badname' not in branches)
@@ -151,13 +171,13 @@ class MapTests(test_util.TestBase):
def test_branchmap_tagging(self, stupid=False):
'''test tagging a renamed branch, which used to raise an exception'''
- test_util.load_svndump_fixture(self.repo_path, 'commit-to-tag.svndump')
+ repo_path = self.load_svndump('commit-to-tag.svndump')
branchmap = open(self.branchmap, 'w')
branchmap.write("magic = art\n")
branchmap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'branchmap', self.branchmap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, branchmap=self.branchmap)
branches = set(self.repo[i].branch() for i in self.repo)
self.assertEquals(sorted(branches), ['art', 'closeme'])
@@ -167,13 +187,13 @@ class MapTests(test_util.TestBase):
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')
+ repo_path = self.load_svndump('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),
+ commands.clone(ui, test_util.fileurl(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'])
@@ -184,14 +204,14 @@ class MapTests(test_util.TestBase):
def test_branchmap_combine(self, stupid=False):
'''test combining two branches, but retaining heads'''
- test_util.load_svndump_fixture(self.repo_path, 'branchmap.svndump')
+ repo_path = self.load_svndump('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),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, branchmap=self.branchmap)
branches = set(self.repo[i].branch() for i in self.repo)
self.assertEquals(sorted(branches), ['default'])
@@ -209,14 +229,14 @@ class MapTests(test_util.TestBase):
def test_branchmap_rebuildmeta(self, stupid=False):
'''test rebuildmeta on a branchmapped clone'''
- test_util.load_svndump_fixture(self.repo_path, 'branchmap.svndump')
+ repo_path = self.load_svndump('branchmap.svndump')
branchmap = open(self.branchmap, 'w')
branchmap.write("badname = dit\n")
branchmap.write("feature = dah\n")
branchmap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'branchmap', self.branchmap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, branchmap=self.branchmap)
originfo = self.repo.svnmeta().branches
@@ -225,7 +245,7 @@ class MapTests(test_util.TestBase):
src, dest = test_util.hgclone(ui, self.wc_path, self.wc_path + '_clone',
update=False)
svncommands.rebuildmeta(ui, dest,
- args=[test_util.fileurl(self.repo_path)])
+ args=[test_util.fileurl(repo_path)])
# just check the keys; assume the contents are unaffected by the branch
# map and thus properly tested by other tests
@@ -238,14 +258,14 @@ class MapTests(test_util.TestBase):
def test_branchmap_verify(self, stupid=False):
'''test verify on a branchmapped clone'''
- test_util.load_svndump_fixture(self.repo_path, 'branchmap.svndump')
+ repo_path = self.load_svndump('branchmap.svndump')
branchmap = open(self.branchmap, 'w')
branchmap.write("badname = dit\n")
branchmap.write("feature = dah\n")
branchmap.close()
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'branchmap', self.branchmap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, branchmap=self.branchmap)
repo = self.repo
@@ -264,7 +284,7 @@ class MapTests(test_util.TestBase):
is to not convert the 'this' branches. Until we can do that, we settle
with aborting.
'''
- test_util.load_svndump_fixture(self.repo_path, 'propset-branch.svndump')
+ repo_path = self.load_svndump('propset-branch.svndump')
branchmap = open(self.branchmap, 'w')
branchmap.write("closeme =\n")
branchmap.close()
@@ -272,8 +292,7 @@ class MapTests(test_util.TestBase):
maps.BranchMap, self.ui(), self.branchmap)
def test_tagmap(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path,
- 'basic_tag_tests.svndump')
+ repo_path = self.load_svndump('basic_tag_tests.svndump')
tagmap = open(self.tagmap, 'w')
tagmap.write("tag_r3 = 3.x # stuffy\n")
tagmap.write("copied_tag = \n")
@@ -281,7 +300,7 @@ class MapTests(test_util.TestBase):
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'tagmap', self.tagmap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, tagmap=self.tagmap)
tags = self.repo.tags()
assert 'tag_r3' not in tags
@@ -292,8 +311,7 @@ class MapTests(test_util.TestBase):
self.test_tagmap(True)
def test_tagren_changed(self, stupid=False):
- test_util.load_svndump_fixture(self.repo_path,
- 'commit-to-tag.svndump')
+ repo_path = self.load_svndump('commit-to-tag.svndump')
tagmap = open(self.tagmap, 'w')
tagmap.write("edit-at-create = edit-past\n")
tagmap.write("also-edit = \n")
@@ -302,7 +320,7 @@ class MapTests(test_util.TestBase):
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'tagmap', self.tagmap)
- commands.clone(ui, test_util.fileurl(self.repo_path),
+ commands.clone(ui, test_util.fileurl(repo_path),
self.wc_path, tagmap=self.tagmap)
tags = self.repo.tags()
@@ -310,8 +328,8 @@ class MapTests(test_util.TestBase):
self.test_tagren_changed(True)
def test_empty_log_message(self, stupid=False):
- repo = self._load_fixture_and_fetch('empty-log-message.svndump',
- stupid=stupid)
+ repo, repo_path = self.load_and_fetch('empty-log-message.svndump',
+ stupid=stupid)
self.assertEqual(repo['tip'].description(), '')
@@ -319,7 +337,7 @@ class MapTests(test_util.TestBase):
ui = self.ui(stupid)
ui.setconfig('hgsubversion', 'defaultmessage', 'blyf')
- commands.clone(ui, test_util.fileurl(self.repo_path), self.wc_path)
+ commands.clone(ui, test_util.fileurl(repo_path), self.wc_path)
self.assertEqual(self.repo['tip'].description(), 'blyf')