Rev 3527: Switch to using an in-memory tree when possible in http://bzr.arbash-meinel.com/branches/bzr/1.6-dev/merge_lca_multi

John Arbash Meinel john at arbash-meinel.com
Tue Jul 22 15:40:06 BST 2008


At http://bzr.arbash-meinel.com/branches/bzr/1.6-dev/merge_lca_multi

------------------------------------------------------------
revno: 3527
revision-id: john at arbash-meinel.com-20080722143903-0pp0c0calpmaj3k6
parent: john at arbash-meinel.com-20080722021504-swide022hwjx7a7z
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: merge_lca_multi
timestamp: Tue 2008-07-22 09:39:03 -0500
message:
  Switch to using an in-memory tree when possible
-------------- next part --------------
=== modified file 'bzrlib/tests/test_merge.py'
--- a/bzrlib/tests/test_merge.py	2008-07-22 02:15:04 +0000
+++ b/bzrlib/tests/test_merge.py	2008-07-22 14:39:03 +0000
@@ -710,23 +710,23 @@
     merge_type = _mod_merge.LCAMerger
 
 
-class TestMerger(TestCaseWithTransport):
+class TestMergerInMemory(TestCaseWithMemoryTransport):
+    """Tests for Merger that can be done without hitting disk."""
 
     def test_find_base(self):
-        # TODO: It would be nice to use make_branch_and_memory_tree here,
-        # unfortunately, I get AssertionErrors during commit if I try
         # A
         # |\
         # B C
-        tree = self.make_branch_and_tree('tree')
+        tree = self.make_branch_and_memory_tree('tree')
+        tree.lock_write()
+        self.addCleanup(tree.unlock)
+        tree.add('.')
         tree.commit('A', rev_id='A-id')
         tree.commit('C', rev_id='C-id')
         tree.set_parent_ids(['A-id'])
         tree.branch.set_last_revision_info(1, 'A-id')
         tree.commit('B', rev_id='B-id')
 
-        tree.lock_write()
-        self.addCleanup(tree.unlock)
         merger = _mod_merge.Merger.from_revision_ids(progress.DummyProgress(),
             tree, 'C-id')
         self.assertEqual('A-id', merger.base_rev_id)
@@ -739,7 +739,11 @@
         # B C
         # |X|
         # D E
-        tree = self.make_branch_and_tree('tree')
+        tree = self.make_branch_and_memory_tree('tree')
+        tree.lock_write()
+        self.addCleanup(tree.unlock)
+
+        tree.add('.')
         tree.commit('A', rev_id='A-id')
         tree.commit('B', rev_id='B-id')
         tree.set_parent_ids(['A-id'])
@@ -751,8 +755,6 @@
         tree.branch.set_last_revision_info(2, 'B-id')
         tree.commit('D', rev_id='D-id')
 
-        tree.lock_write()
-        self.addCleanup(tree.unlock)
         merger = _mod_merge.Merger.from_revision_ids(progress.DummyProgress(),
             tree, 'E-id')
         self.assertEqual('A-id', merger.base_rev_id)



More information about the bazaar-commits mailing list