# HG changeset patch # User Dan Villiom Podlaski Christiansen # Date 1242846947 -7200 # Node ID 4dfab1b8b7bee8d18d76a81ec5a4e4c3cce29a16 # Parent 49e6895ce04174f2f35193a8aa54307949155ba8 Mention what failed when given a non-numeric revision to clone/pull. Replace test_branch_tip_update_to_branch_anchor with test_branch_pull_anchor diff --git a/hgsubversion/svnrepo.py b/hgsubversion/svnrepo.py --- a/hgsubversion/svnrepo.py +++ b/hgsubversion/svnrepo.py @@ -63,7 +63,7 @@ def generate_repo_class(ui, repo): lock = self.wlock() try: wrappers.pull(self, source=remote.svnurl, - rev=heads, force=force) + heads=heads, force=force) finally: lock.release() diff --git a/hgsubversion/wrappers.py b/hgsubversion/wrappers.py --- a/hgsubversion/wrappers.py +++ b/hgsubversion/wrappers.py @@ -194,7 +194,7 @@ def push(repo, dest="default", force=Fal return 0 -def pull(repo, source="default", rev=None, force=False): +def pull(repo, source="default", heads=None, force=False): """pull new revisions from Subversion Also takes svn, svn_stupid, and create_new_dest kwargs. @@ -203,7 +203,7 @@ def pull(repo, source="default", rev=Non svn_url = util.normalize_url(url) # Split off #rev - svn_url, revs, checkout = hg.parseurl(svn_url, rev) + svn_url, heads, checkout = hg.parseurl(svn_url, heads) old_encoding = util.swap_out_encoding() # TODO implement skipto support @@ -211,8 +211,8 @@ def pull(repo, source="default", rev=Non try: stopat_rev = int(checkout or 0) except ValueError: - raise hgutil.Abort('unrecognised Subversion revision; ' - 'only numbers work.') + raise hgutil.Abort('unrecognised Subversion revision %s: ' + 'only numbers work.' % checkout) have_replay = not repo.ui.configbool('hgsubversion', 'stupid') if have_replay and not callable( diff --git a/tests/test_fetch_branches.py b/tests/test_fetch_branches.py --- a/tests/test_fetch_branches.py +++ b/tests/test_fetch_branches.py @@ -3,6 +3,7 @@ import unittest from mercurial import hg from mercurial import node from mercurial import ui +from mercurial import util as hgutil import test_util @@ -78,11 +79,13 @@ class TestFetchBranches(test_util.TestBa def test_branch_tip_update_to_default_stupid(self): self.test_branch_tip_update_to_default(True) - def test_branch_tip_update_to_branch_anchor(self): + def test_branch_pull_anchor(self): + self.assertRaises(hgutil.Abort, + self._load_fixture_and_fetch_with_anchor, + 'unorderedbranch.svndump', 'NaN') repo = self._load_fixture_and_fetch_with_anchor( - 'unorderedbranch.svndump', 'branch') - self.assertEqual(repo[None].branch(), 'branch') - self.assertEqual(repo[None].parents()[0], repo[repo.branchheads()[0]]) + 'unorderedbranch.svndump', '4') + self.assertTrue('c' not in repo.branchtags()) def test_branches_weird_moves(self, stupid=False): repo = self._load_fixture_and_fetch('renamedproject.svndump', stupid,