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