Mercurial > hgsubversion
view tests/test_fetch_mappings.py @ 547:9e6499c415a9
tags: fix files edited during tag creation
This was broken because file edits were skipped if they were in tags, but
committags in svnmeta didn't check to see if any files were changed during
initial tag creation.
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Sat, 06 Feb 2010 10:36:21 -0600 |
parents | 2851b81c65ce |
children | 8e025a6f0db4 |
line wrap: on
line source
"""Tests for author maps and file maps. """ import os import unittest from mercurial import commands from mercurial import ui from mercurial import node import test_util from hgsubversion import maps class MapTests(test_util.TestBase): @property def authors(self): return os.path.join(self.tmpdir, 'authormap') @property def filemap(self): return os.path.join(self.tmpdir, 'filemap') def test_author_map(self, stupid=False): test_util.load_svndump_fixture(self.repo_path, '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 = ui.ui() _ui.setconfig('hgsubversion', 'stupid', str(stupid)) _ui.setconfig('hgsubversion', 'authormap', self.authors) commands.clone(_ui, test_util.fileurl(self.repo_path), self.wc_path, authors=self.authors) self.assertEqual(self.repo[0].user(), 'Augie Fackler <durin42@gmail.com>') self.assertEqual(self.repo['tip'].user(), 'evil@5b65bade-98f3-4993-a01f-b7a6710da339') def test_author_map_stupid(self): 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') authormap = open(self.authors, 'w') authormap.write("evil=Testy <test@test>") authormap.close() _ui = ui.ui() _ui.setconfig('hgsubversion', 'stupid', str(stupid)) _ui.setconfig('hgsubversion', 'authormap', self.authors) commands.clone(_ui, test_util.fileurl(self.repo_path), self.wc_path, authors=self.authors) self.assertEqual(self.repo[0].user(), 'Augie@5b65bade-98f3-4993-a01f-b7a6710da339') self.assertEqual(self.repo['tip'].user(), 'Testy <test@test>') def test_author_map_closing_author_stupid(self): self.test_author_map_closing_author(True) def test_author_map_no_overwrite(self): cwd = os.path.dirname(__file__) orig = os.path.join(cwd, 'fixtures', 'author-map-test.txt') new = open(self.authors, 'w') new.write(open(orig).read()) new.close() test = maps.AuthorMap(ui.ui(), self.authors) fromself = set(test) test.load(orig) all = set(test) self.assertEqual(fromself.symmetric_difference(all), set()) def test_file_map(self, stupid=False): test_util.load_svndump_fixture(self.repo_path, 'replace_trunk_with_branch.svndump') filemap = open(self.filemap, 'w') filemap.write("include alpha\n") filemap.close() _ui = ui.ui() _ui.setconfig('hgsubversion', 'stupid', str(stupid)) _ui.setconfig('hgsubversion', 'filemap', self.filemap) commands.clone(_ui, test_util.fileurl(self.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') def test_file_map_stupid(self): 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') filemap = open(self.filemap, 'w') filemap.write("exclude alpha\n") filemap.close() _ui = ui.ui() _ui.setconfig('hgsubversion', 'stupid', str(stupid)) _ui.setconfig('hgsubversion', 'filemap', self.filemap) commands.clone(_ui, test_util.fileurl(self.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') def test_file_map_exclude_stupid(self): self.test_file_map_exclude(True) def suite(): return unittest.TestLoader().loadTestsFromTestCase(MapTests)