Rev 437: Fix more custom revid tests. in file:///home/jelmer/bzr-svn/customrevids/
Jelmer Vernooij
jelmer at samba.org
Fri May 18 02:46:27 BST 2007
At file:///home/jelmer/bzr-svn/customrevids/
------------------------------------------------------------
revno: 437
revision-id: jelmer at samba.org-20070518014626-kjicpl6y6qi5kad0
parent: jelmer at samba.org-20070518012526-sm3mjnioq93ub9iq
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: customrevids
timestamp: Fri 2007-05-18 02:46:26 +0100
message:
Fix more custom revid tests.
modified:
checkout.py workingtree.py-20060306120941-b083cb0fdd4a69de
commit.py commit.py-20060607190346-qvq128wgfubhhgm2-1
repository.py repository.py-20060306123302-1f8c5069b3fe0265
tests/test_commit.py test_commit.py-20060624213521-l5kcufywkh9mnilk-1
tests/test_repos.py test_repos.py-20060508151940-ddc49a59257ca712
=== modified file 'checkout.py'
--- a/checkout.py 2007-05-18 01:25:26 +0000
+++ b/checkout.py 2007-05-18 01:46:26 +0000
@@ -427,13 +427,16 @@
self.client_ctx.log_msg_baton2 = log_message_func
if rev_id is not None:
- wc = self._get_wc(write_lock=True)
- try:
- svn.wc.prop_set(SVN_PROP_BZR_REVISION_ID,
- self._get_bzr_revids() + rev_id + "\n",
- self.basedir, wc)
- finally:
- svn.wc.adm_close(wc)
+ extra = rev_id + "\n"
+ else:
+ extra = ""
+ wc = self._get_wc(write_lock=True)
+ try:
+ svn.wc.prop_set(SVN_PROP_BZR_REVISION_ID,
+ self._get_bzr_revids() + extra,
+ self.basedir, wc)
+ finally:
+ svn.wc.adm_close(wc)
commit_info = svn.client.commit3(specific_files, True, False,
self.client_ctx)
=== modified file 'commit.py'
--- a/commit.py 2007-05-18 01:25:26 +0000
+++ b/commit.py 2007-05-18 01:46:26 +0000
@@ -84,7 +84,11 @@
self._svnprops[SVN_PROP_SVK_MERGE] = old + new
if revision_id is not None:
- self._svnprops[SVN_PROP_BZR_REVISION_ID] += "%s\n" % revision_id
+ extra = "%s\n" % revision_id
+ if self._svnprops.has_key(SVN_PROP_BZR_REVISION_ID):
+ self._svnprops[SVN_PROP_BZR_REVISION_ID] += extra
+ else:
+ self._svnprops[SVN_PROP_BZR_REVISION_ID] = extra
# At least one of the parents has to be the last revision on the
# mainline in # Subversion.
=== modified file 'repository.py'
--- a/repository.py 2007-05-18 00:43:38 +0000
+++ b/repository.py 2007-05-18 01:46:26 +0000
@@ -443,6 +443,7 @@
if self.branchprop_list.get_property_diff(branch_path, i, SVN_PROP_BZR_REVISION_ID).strip("\n") == revid:
self.revmap.insert_revid(revid, branch_path, i, i, "undefined")
return (branch_path, i)
+ i+=1
raise AssertionError("Revision id was added incorrectly")
=== modified file 'tests/test_commit.py'
--- a/tests/test_commit.py 2007-05-18 01:25:26 +0000
+++ b/tests/test_commit.py 2007-05-18 01:46:26 +0000
@@ -126,7 +126,7 @@
builder.finish_inventory()
builder.commit("foo")
- self.assertEqual("my-revision-id",
+ self.assertEqual("my-revision-id\n",
self.client_get_prop("dc", "bzr:revision-id-v%d" % MAPPING_VERSION, 2))
def test_mwh(self):
=== modified file 'tests/test_repos.py'
--- a/tests/test_repos.py 2007-05-18 00:43:38 +0000
+++ b/tests/test_repos.py 2007-05-18 01:46:26 +0000
@@ -422,8 +422,7 @@
"myrevid")
(num, date, author) = self.client_commit("dc", "Second Message")
repository = Repository.open("svn+%s" % repos_url)
- self.assertRaises(NoSuchRevision,
- repository.get_revision, repository.generate_revision_id(2, ""))
+ revid = generate_svn_revision_id(repository.uuid, 2, "")
rev = repository.get_revision("myrevid")
self.assertEqual([repository.generate_revision_id(1, "")],
rev.parent_ids)
@@ -650,6 +649,18 @@
repository.lookup_revision_id(
repository.generate_revision_id(1, "bloe")))
+ def test_lookup_revision_id_overridden(self):
+ repos_url = self.make_client('d', 'dc')
+ self.build_tree({'dc/bloe': None})
+ self.client_add("dc/bloe")
+ self.client_set_prop("dc", SVN_PROP_BZR_REVISION_ID, "myid\n")
+ self.client_commit("dc", "foobar")
+ repository = Repository.open("svn+%s" % repos_url)
+ self.assertEqual(("", 1), repository.lookup_revision_id(
+ generate_svn_revision_id(repository.uuid, 1, "")))
+ self.assertEqual(("", 1),
+ repository.lookup_revision_id("myid"))
+
def test_lookup_revision_id_invalid_uuid(self):
repos_url = self.make_client('d', 'dc')
repository = Repository.open("svn+%s" % repos_url)
More information about the bazaar-commits
mailing list