Rev 2475: Return the commited revision id from BranchBuilder.build_commit to save later instrospection. in file:///home/robertc/source/baz/build-branch/

Robert Collins robertc at robertcollins.net
Fri Apr 27 04:39:12 BST 2007


At file:///home/robertc/source/baz/build-branch/

------------------------------------------------------------
revno: 2475
revision-id: robertc at robertcollins.net-20070427033909-bsuz8ogd7r75dbfl
parent: robertc at robertcollins.net-20070427031822-1ga7jck9yw5ivsfr
committer: Robert Collins <robertc at robertcollins.net>
branch nick: build-branch
timestamp: Fri 2007-04-27 13:39:09 +1000
message:
  Return the commited revision id from BranchBuilder.build_commit to save later instrospection.
modified:
  bzrlib/branchbuilder.py        branchbuilder.py-20070427022007-zlxpqz2lannhk6y8-1
  bzrlib/tests/test_branchbuilder.py test_branchbuilder.p-20070427022007-zlxpqz2lannhk6y8-2
=== modified file 'bzrlib/branchbuilder.py'
--- a/bzrlib/branchbuilder.py	2007-04-27 03:13:00 +0000
+++ b/bzrlib/branchbuilder.py	2007-04-27 03:39:09 +0000
@@ -50,9 +50,11 @@
         """Build a commit on the branch."""
         tree = memorytree.MemoryTree.create_on_branch(self._branch)
         tree.lock_write()
-        tree.add('')
-        tree.commit('commit %d' % (self._branch.revno() + 1))
-        tree.unlock()
+        try:
+            tree.add('')
+            return tree.commit('commit %d' % (self._branch.revno() + 1))
+        finally:
+            tree.unlock()
 
     def get_branch(self):
         """Return the branch created by the builder."""

=== modified file 'bzrlib/tests/test_branchbuilder.py'
--- a/bzrlib/tests/test_branchbuilder.py	2007-04-27 03:02:05 +0000
+++ b/bzrlib/tests/test_branchbuilder.py	2007-04-27 03:39:09 +0000
@@ -45,10 +45,9 @@
     def test_build_one_commit(self):
         """doing build_commit causes a commit to happen."""
         builder = BranchBuilder(self.get_transport().clone('foo'))
-        builder.build_commit()
+        rev_id = builder.build_commit()
         branch = builder.get_branch()
-        self.assertEqual(1, branch.last_revision_info()[0])
-        # we dont care what the revision id is.
+        self.assertEqual((1, rev_id), branch.last_revision_info())
         self.assertEqual(
             'commit 1',
             branch.repository.get_revision(branch.last_revision()).message)
@@ -56,14 +55,13 @@
     def test_build_two_commits(self):
         """The second commit has the right parents and message."""
         builder = BranchBuilder(self.get_transport().clone('foo'))
-        builder.build_commit()
-        builder.build_commit()
+        rev_id1 = builder.build_commit()
+        rev_id2 = builder.build_commit()
         branch = builder.get_branch()
-        self.assertEqual(2, branch.last_revision_info()[0])
-        # we dont care what the revision id is.
+        self.assertEqual((2, rev_id2), branch.last_revision_info())
         self.assertEqual(
             'commit 2',
             branch.repository.get_revision(branch.last_revision()).message)
         self.assertEqual(
-            [branch.revision_history()[0]],
+            [rev_id1],
             branch.repository.get_revision(branch.last_revision()).parent_ids)



More information about the bazaar-commits mailing list