Rev 6228: (jelmer) Fix Repository.get_revision_delta(specific_file_ids=) test. (Jelmer in file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/

Patch Queue Manager pqm at pqm.ubuntu.com
Thu Oct 20 00:02:24 UTC 2011


At file:///srv/pqm.bazaar-vcs.org/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 6228 [merge]
revision-id: pqm at pqm.ubuntu.com-20111020000223-9w0ad3ivkyypql5i
parent: pqm at pqm.ubuntu.com-20111019133718-ntud4nkunzvztx8a
parent: jelmer at samba.org-20111019142307-ocvv1z27fx8wxrnp
committer: Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2011-10-20 00:02:23 +0000
message:
  (jelmer) Fix Repository.get_revision_delta(specific_file_ids=) test. (Jelmer
   Vernooij)
modified:
  bzrlib/tests/per_repository/test_repository.py test_repository.py-20060131092128-ad07f494f5c9d26c
=== modified file 'bzrlib/tests/per_repository/test_repository.py'
--- a/bzrlib/tests/per_repository/test_repository.py	2011-10-17 08:45:09 +0000
+++ b/bzrlib/tests/per_repository/test_repository.py	2011-10-19 14:23:07 +0000
@@ -287,54 +287,6 @@
         self.assertIsInstance(delta, _mod_delta.TreeDelta)
         self.assertEqual([('vla', 'file2', 'file')], delta.added)
 
-    def test_get_revision_delta_filtered(self):
-        tree_a = self.make_branch_and_tree('a')
-        self.build_tree(['a/foo', 'a/bar/', 'a/bar/b1', 'a/bar/b2', 'a/baz'])
-        tree_a.add(['foo', 'bar', 'bar/b1', 'bar/b2', 'baz'],
-                   ['foo-id', 'bar-id', 'b1-id', 'b2-id', 'baz-id'])
-        tree_a.commit('rev1', rev_id='rev1')
-        self.build_tree(['a/bar/b3'])
-        tree_a.add('bar/b3', 'b3-id')
-        tree_a.commit('rev2', rev_id='rev2')
-
-        # Test multiple files
-        delta = tree_a.branch.repository.get_revision_delta('rev1',
-            specific_fileids=['foo-id', 'baz-id'])
-        self.assertIsInstance(delta, _mod_delta.TreeDelta)
-        self.assertEqual([
-            ('baz', 'baz-id', 'file'),
-            ('foo', 'foo-id', 'file'),
-            ], delta.added)
-        # Test a directory
-        delta = tree_a.branch.repository.get_revision_delta('rev1',
-            specific_fileids=['bar-id'])
-        self.assertIsInstance(delta, _mod_delta.TreeDelta)
-        self.assertEqual([
-            ('bar', 'bar-id', 'directory'),
-            ('bar/b1', 'b1-id', 'file'),
-            ('bar/b2', 'b2-id', 'file'),
-            ], delta.added)
-        # Test a file in a directory
-        delta = tree_a.branch.repository.get_revision_delta('rev1',
-            specific_fileids=['b2-id'])
-        self.assertIsInstance(delta, _mod_delta.TreeDelta)
-        self.assertEqual([
-            ('bar', 'bar-id', 'directory'),
-            ('bar/b2', 'b2-id', 'file'),
-            ], delta.added)
-        # Try another revision
-        delta = tree_a.branch.repository.get_revision_delta('rev2',
-                specific_fileids=['b3-id'])
-        self.assertIsInstance(delta, _mod_delta.TreeDelta)
-        self.assertEqual([
-            ('bar', 'bar-id', 'directory'),
-            ('bar/b3', 'b3-id', 'file'),
-            ], delta.added)
-        delta = tree_a.branch.repository.get_revision_delta('rev2',
-                specific_fileids=['foo-id'])
-        self.assertIsInstance(delta, _mod_delta.TreeDelta)
-        self.assertEqual([], delta.added)
-
     def test_clone_bzrdir_repository_revision(self):
         # make a repository with some revisions,
         # and clone it, this should not have unreferenced revisions.
@@ -971,7 +923,73 @@
         repo = self.make_repository('repo')
         self.assertIsInstance(repo.user_url, str)
         self.assertEqual(repo.user_url, repo.user_transport.base)
-        # for all current bzrdir implementations the user dir must be 
+        # for all current bzrdir implementations the user dir must be
         # above the control dir but we might need to relax that?
         self.assertEqual(repo.control_url.find(repo.user_url), 0)
         self.assertEqual(repo.control_url, repo.control_transport.base)
+
+
+class TestDeltaRevisionFiltered(per_repository.TestCaseWithRepository):
+
+    def setUp(self):
+        super(TestDeltaRevisionFiltered, self).setUp()
+        tree_a = self.make_branch_and_tree('a')
+        self.build_tree(['a/foo', 'a/bar/', 'a/bar/b1', 'a/bar/b2', 'a/baz'])
+        tree_a.add(['foo', 'bar', 'bar/b1', 'bar/b2', 'baz'],
+                   ['foo-id', 'bar-id', 'b1-id', 'b2-id', 'baz-id'])
+        tree_a.commit('rev1', rev_id='rev1')
+        self.build_tree(['a/bar/b3'])
+        tree_a.add('bar/b3', 'b3-id')
+        tree_a.commit('rev2', rev_id='rev2')
+        self.repository = tree_a.branch.repository
+
+    def test_multiple_files(self):
+        # Test multiple files
+        delta = self.repository.get_revision_delta('rev1',
+            specific_fileids=['foo-id', 'baz-id'])
+        self.assertIsInstance(delta, _mod_delta.TreeDelta)
+        self.assertEqual([
+            ('baz', 'baz-id', 'file'),
+            ('foo', 'foo-id', 'file'),
+            ], delta.added)
+
+    def test_directory(self):
+        # Test a directory
+        delta = self.repository.get_revision_delta('rev1',
+            specific_fileids=['bar-id'])
+        self.assertIsInstance(delta, _mod_delta.TreeDelta)
+        self.assertEqual([
+            ('bar', 'bar-id', 'directory'),
+            ('bar/b1', 'b1-id', 'file'),
+            ('bar/b2', 'b2-id', 'file'),
+            ], delta.added)
+
+    def test_unrelated(self):
+        # Try another revision
+        delta = self.repository.get_revision_delta('rev2',
+                specific_fileids=['foo-id'])
+        self.assertIsInstance(delta, _mod_delta.TreeDelta)
+        self.assertEqual([], delta.added)
+
+    def test_file_in_directory(self):
+        # Test a file in a directory, both of which were added
+        delta = self.repository.get_revision_delta('rev1',
+            specific_fileids=['b2-id'])
+        self.assertIsInstance(delta, _mod_delta.TreeDelta)
+        self.assertEqual([
+            ('bar', 'bar-id', 'directory'),
+            ('bar/b2', 'b2-id', 'file'),
+            ], delta.added)
+
+    def test_file_in_unchanged_directory(self):
+        delta = self.repository.get_revision_delta('rev2',
+            specific_fileids=['b3-id'])
+        self.assertIsInstance(delta, _mod_delta.TreeDelta)
+        if delta.added == [
+            ('bar', 'bar-id', 'directory'),
+            ('bar/b3', 'b3-id', 'file')]:
+            self.knownFailure("bzr incorrectly reports 'bar' as added - "
+                              "bug 878217")
+        self.assertEqual([
+            ('bar/b3', 'b3-id', 'file'),
+            ], delta.added)




More information about the bazaar-commits mailing list