Rev 1799: Fix more tests in file:///data/jelmer/bzr-svn/trunk/

Jelmer Vernooij jelmer at samba.org
Thu Sep 4 09:48:17 BST 2008


At file:///data/jelmer/bzr-svn/trunk/

------------------------------------------------------------
revno: 1799
revision-id: jelmer at samba.org-20080904084816-k417xa7c05htl0y9
parent: jelmer at samba.org-20080904081108-mhnj83ywmro0vbj3
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: trunk
timestamp: Thu 2008-09-04 10:48:16 +0200
message:
  Fix more tests
modified:
  TODO                           todo-20060729211917-2kpobww0zyvvo0j2-1
  log.py                         log.py-20080707143400-mxzjdllay5jhvnq1-1
  tests/mapping3/__init__.py     __init__.py-20080831152358-oy04n53cpnh64aj6-1
  tests/test_fetch.py            test_fetch.py-20070624210302-luvgwjmlfysk5qeq-1
=== modified file 'TODO'
--- a/TODO	2008-09-04 07:32:57 +0000
+++ b/TODO	2008-09-04 08:48:16 +0000
@@ -5,10 +5,12 @@
   + remove Mapping.get_guessed_layout()
 
 - generate deltas rather than fulltexts when creating file id maps
+- fix working trees
 
 tests:
 - more blackbox tests
  - svn-import without scheme specified should guess
+- performance tests (count roundtrips?)
 
 .svn working trees:
 - implement apply_inventory_delta()

=== modified file 'log.py'
--- a/log.py	2008-09-04 07:58:37 +0000
+++ b/log.py	2008-09-04 08:48:16 +0000
@@ -28,7 +28,7 @@
         data = (rev.svn_meta.revnum, rev.svn_meta.branch_path)
     else:
         try:
-            (uuid, bp, revnum, mapp) = mapping.parse_revision_id(rev.revision_id)
+            (uuid, bp, revnum, mapp) = mapping.mapping_registry.parse_revision_id(rev.revision_id)
         except InvalidRevisionId:
             pass
         else:

=== modified file 'tests/mapping3/__init__.py'
--- a/tests/mapping3/__init__.py	2008-09-04 07:58:37 +0000
+++ b/tests/mapping3/__init__.py	2008-09-04 08:48:16 +0000
@@ -13,6 +13,7 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+from bzrlib.bzrdir import BzrDir
 from bzrlib.repository import Repository
 from bzrlib.tests import TestCase
 
@@ -93,6 +94,7 @@
 
     def setUp(self):
         super(RepositoryTests, self).setUp()
+        self.repos_url = self.make_repository("d")
         self._old_mapping = mapping_registry._get_default_key()
         mapping_registry.set_default("v3")
 
@@ -101,14 +103,12 @@
         mapping_registry.set_default("v3")
 
     def test_generate_revision_id_forced_revid(self):
-        repos_url = self.make_repository("a")
-
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.change_prop(SVN_PROP_BZR_REVISION_ID+"v3-none", 
                              "2 someid\n")
         dc.close()
 
-        repos = Repository.open(repos_url)
+        repos = Repository.open(self.repos_url)
         mapping = repos.get_mapping()
         if not mapping.roundtripping:
             raise TestNotApplicable()
@@ -116,13 +116,12 @@
         self.assertEquals("someid", revid)
 
     def test_generate_revision_id_forced_revid_invalid(self):
-        repos_url = self.make_repository("a")
 
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.change_prop(SVN_PROP_BZR_REVISION_ID+"v3-none", "corrupt-id\n")
         dc.close()
 
-        repos = Repository.open(repos_url)
+        repos = Repository.open(self.repos_url)
         mapping = repos.get_mapping()
         if not mapping.roundtripping:
             raise TestNotApplicable()
@@ -132,18 +131,16 @@
                 revid)
 
     def test_revision_ghost_parents(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.add_file("foo").modify("data")
         dc.close()
 
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.open_file("foo").modify("data2")
         dc.change_prop("bzr:ancestry:v3-none", "ghostparent\n")
         dc.close()
 
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         self.assertEqual((),
                 repository.get_revision(
@@ -157,8 +154,8 @@
                     repository.generate_revision_id(2, "", mapping)).parent_ids)
  
     def test_get_revision_id_overriden(self):
-        repos_url = self.make_client('d', 'dc')
-        repository = Repository.open(repos_url)
+        self.make_checkout(self.repos_url, 'dc')
+        repository = Repository.open(self.repos_url)
         self.assertRaises(NoSuchRevision, repository.get_revision, "nonexisting")
         self.build_tree({'dc/foo': "data"})
         self.client_add("dc/foo")
@@ -168,7 +165,7 @@
                             "3 myrevid\n")
         self.client_update("dc")
         (num, date, author) = self.client_commit("dc", "Second Message")
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         if not mapping.roundtripping:
             raise TestNotApplicable
@@ -182,7 +179,7 @@
         self.assertIsInstance(rev.properties, dict)
 
     def test_get_ancestry_merged(self):
-        repos_url = self.make_client('d', 'dc')
+        self.make_checkout(self.repos_url, 'dc')
         self.build_tree({'dc/foo': "data"})
         self.client_add("dc/foo")
         self.client_commit("dc", "My Message")
@@ -190,7 +187,7 @@
         self.client_set_prop("dc", "bzr:ancestry:v3-none", "a-parent\n")
         self.build_tree({'dc/foo': "data2"})
         self.client_commit("dc", "Second Message")
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         self.assertEqual([None, repository.generate_revision_id(0, "", mapping)],
                 repository.get_ancestry(
@@ -207,13 +204,11 @@
                     repository.generate_revision_id(2, "", mapping)))
 
     def test_lookup_revision_id_overridden(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.add_dir("bloe")
         dc.change_prop(SVN_PROP_BZR_REVISION_ID+"v3-none", "2 myid\n")
         dc.close()
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         self.assertEqual(("", 1), repository.lookup_revision_id( 
             mapping.revision_id_foreign_to_bzr((repository.uuid, 1, "")))[:2])
@@ -221,14 +216,12 @@
                 repository.lookup_revision_id("myid")[:2])
 
     def test_lookup_revision_id_overridden_invalid(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
+        dc = self.get_commit_editor(self.repos_url)
         dc.add_dir("bloe")
         dc.change_prop(SVN_PROP_BZR_REVISION_ID+"v3-none", "corrupt-entry\n")
         dc.close()
 
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         self.assertEqual(("", 1), repository.lookup_revision_id( 
             mapping.revision_id_foreign_to_bzr((repository.uuid, 1, "")))[:2])
@@ -236,7 +229,7 @@
             "corrupt-entry")
 
     def test_lookup_revision_id_overridden_invalid_dup(self):
-        repos_url = self.make_client('d', 'dc')
+        self.make_checkout(self.repos_url, 'dc')
         self.build_tree({'dc/bloe': None})
         self.client_add("dc/bloe")
         self.client_set_prop("dc", SVN_PROP_BZR_REVISION_ID+"v3-none", 
@@ -247,7 +240,7 @@
         self.client_set_prop("dc", SVN_PROP_BZR_REVISION_ID+"v3-none", 
                 "corrupt-entry\n2 corrupt-entry\n")
         self.client_commit("dc", "foobar")
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         mapping = repository.get_mapping()
         self.assertEqual(("", 2), repository.lookup_revision_id( 
             mapping.revision_id_foreign_to_bzr((repository.uuid, 2, "")))[:2])
@@ -259,26 +252,26 @@
     def test_lookup_revision_id_overridden_not_found(self):
         """Make sure a revision id that is looked up but doesn't exist 
         doesn't accidently end up in the revid cache."""
-        repos_url = self.make_client('d', 'dc')
+        self.make_checkout(self.repos_url, 'dc')
         self.build_tree({'dc/bloe': None})
         self.client_add("dc/bloe")
         self.client_set_prop("dc", SVN_PROP_BZR_REVISION_ID+"v3-none", "2 myid\n")
         self.client_commit("dc", "foobar")
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         self.assertRaises(NoSuchRevision, 
                 repository.lookup_revision_id, "foobar")
 
     def test_set_branching_scheme_property(self):
-        repos_url = self.make_client('d', 'dc')
+        self.make_checkout(self.repos_url, 'dc')
         self.client_set_prop("dc", SVN_PROP_BZR_BRANCHING_SCHEME, 
             "trunk\nbranches/*\nbranches/tmp/*")
         self.client_commit("dc", "set scheme")
-        repository = Repository.open(repos_url)
+        repository = Repository.open(self.repos_url)
         self.assertEquals(ListBranchingScheme(["trunk", "branches/*", "branches/tmp/*"]).branch_list,
                           repository.get_mapping().scheme.branch_list)
 
     def test_set_property_scheme(self):
-        repos_url = self.make_client('d', 'dc')
+        self.make_checkout(self.repos_url, 'dc')
         repos = Repository.open(repos_url)
         set_property_scheme(repos, ListBranchingScheme(["bla/*"]))
         self.client_update("dc")
@@ -287,4 +280,103 @@
         self.assertEquals("Updating branching scheme for Bazaar.", 
                 self.client_log(repos_url, 1, 1)[1][3])
 
+    def test_fetch_fileid_renames(self):
+        dc = self.get_commit_editor(self.repos_url)
+        dc.add_file("test").modify("data")
+        dc.change_prop("bzr:file-ids", "test\tbla\n")
+        dc.change_prop("bzr:revision-info", "")
+        dc.close()
+
+        oldrepos = Repository.open(self.repos_url)
+        dir = BzrDir.create("f", format.get_rich_root_format())
+        newrepos = dir.create_repository()
+        oldrepos.copy_content_into(newrepos)
+        mapping = oldrepos.get_mapping()
+        self.assertEqual("bla", newrepos.get_inventory(
+            oldrepos.generate_revision_id(1, "", mapping)).path2id("test"))
+
+    def test_fetch_ghosts(self):
+        dc = self.get_commit_editor(self.repos_url)
+        dc.add_file("bla").modify("data")
+        dc.change_prop("bzr:ancestry:v3-none", "aghost\n")
+        dc.close()
+
+        oldrepos = Repository.open(self.repos_url)
+        dir = BzrDir.create("f", format.get_rich_root_format())
+        newrepos = dir.create_repository()
+        oldrepos.copy_content_into(newrepos)
+        mapping = oldrepos.get_mapping()
+
+        rev = newrepos.get_revision(oldrepos.generate_revision_id(1, "", mapping))
+        self.assertTrue("aghost" in rev.parent_ids)
+
+    def test_fetch_invalid_ghosts(self):
+        dc = self.get_commit_editor(self.repos_url)
+        dc.add_file("bla").modify("data")
+        dc.change_prop("bzr:ancestry:v3-none", "a ghost\n")
+        dc.close()
+
+        oldrepos = Repository.open(self.repos_url)
+        dir = BzrDir.create("f", format.get_rich_root_format())
+        newrepos = dir.create_repository()
+        oldrepos.copy_content_into(newrepos)
+        
+        mapping = oldrepos.get_mapping()
+
+        rev = newrepos.get_revision(oldrepos.generate_revision_id(1, "", mapping))
+        self.assertEqual([oldrepos.generate_revision_id(0, "", mapping)], rev.parent_ids)
+
+    def test_fetch_complex_ids_dirs(self):
+        dc = self.get_commit_editor(self.repos_url)
+        dir = dc.add_dir("dir")
+        dir.add_dir("dir/adir")
+        dc.change_prop("bzr:revision-info", "")
+        dc.change_prop("bzr:file-ids", "dir\tbloe\ndir/adir\tbla\n")
+        dc.close()
+
+        dc = self.get_commit_editor(self.repos_url)
+        dc.add_dir("bdir", "dir/adir")
+        dir = dc.open_dir("dir")
+        dir.delete("dir/adir")
+        dc.change_prop("bzr:revision-info", "properties: \n")
+        dc.change_prop("bzr:file-ids", "bdir\tbla\n")
+        dc.close()
+
+        oldrepos = Repository.open(self.repos_url)
+        dir = BzrDir.create("f", format.get_rich_root_format())
+        newrepos = dir.create_repository()
+        oldrepos.copy_content_into(newrepos)
+        mapping = oldrepos.get_mapping()
+        tree = newrepos.revision_tree(oldrepos.generate_revision_id(2, "", mapping))
+        self.assertEquals("bloe", tree.path2id("dir"))
+        self.assertIs(None, tree.path2id("dir/adir"))
+        self.assertEquals("bla", tree.path2id("bdir"))
+
+    def test_fetch_complex_ids_files(self):
+        dc = self.get_commit_editor(self.repos_url)
+        dir = dc.add_dir("dir")
+        dir.add_file("dir/adir").modify("contents")
+        dc.change_prop("bzr:revision-info", "")
+        dc.change_prop("bzr:file-ids", "dir\tbloe\ndir/adir\tbla\n")
+        dc.close()
+
+        dc = self.get_commit_editor(self.repos_url)
+        dc.add_file("bdir", "dir/adir")
+        dir = dc.open_dir("dir")
+        dir.delete("dir/adir")
+        dc.change_prop("bzr:revision-info", "properties: \n")
+        dc.change_prop("bzr:file-ids", "bdir\tbla\n")
+        dc.close()
+
+        oldrepos = Repository.open(self.repos_url)
+        dir = BzrDir.create("f", format.get_rich_root_format())
+        newrepos = dir.create_repository()
+        oldrepos.copy_content_into(newrepos)
+        mapping = oldrepos.get_mapping()
+        tree = newrepos.revision_tree(oldrepos.generate_revision_id(2, "", mapping))
+        self.assertEquals("bloe", tree.path2id("dir"))
+        self.assertIs(None, tree.path2id("dir/adir"))
+        mutter('entries: %r' % tree.inventory.entries())
+        self.assertEquals("bla", tree.path2id("bdir"))
+
 

=== modified file 'tests/test_fetch.py'
--- a/tests/test_fetch.py	2008-08-31 15:31:04 +0000
+++ b/tests/test_fetch.py	2008-09-04 08:48:16 +0000
@@ -37,23 +37,6 @@
 import os, sys
 
 class TestFetchWorks(SubversionTestCase):
-    def test_fetch_fileid_renames(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
-        dc.add_file("test").modify("data")
-        dc.change_prop("bzr:file-ids", "test\tbla\n")
-        dc.change_prop("bzr:revision-info", "")
-        dc.close()
-
-        oldrepos = Repository.open(repos_url)
-        dir = BzrDir.create("f", format.get_rich_root_format())
-        newrepos = dir.create_repository()
-        oldrepos.copy_content_into(newrepos)
-        mapping = oldrepos.get_mapping()
-        self.assertEqual("bla", newrepos.get_inventory(
-            oldrepos.generate_revision_id(1, "", mapping)).path2id("test"))
-
     def test_fetch_trunk1(self):
         repos_url = self.make_repository('d')
 
@@ -151,63 +134,6 @@
         newrepos = dir.create_repository()
         oldrepos.copy_content_into(newrepos, NULL_REVISION)
 
-    def test_fetch_complex_ids_dirs(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
-        dir = dc.add_dir("dir")
-        dir.add_dir("dir/adir")
-        dc.change_prop("bzr:revision-info", "")
-        dc.change_prop("bzr:file-ids", "dir\tbloe\ndir/adir\tbla\n")
-        dc.close()
-
-        dc = self.get_commit_editor(repos_url)
-        dc.add_dir("bdir", "dir/adir")
-        dir = dc.open_dir("dir")
-        dir.delete("dir/adir")
-        dc.change_prop("bzr:revision-info", "properties: \n")
-        dc.change_prop("bzr:file-ids", "bdir\tbla\n")
-        dc.close()
-
-        oldrepos = Repository.open(repos_url)
-        dir = BzrDir.create("f", format.get_rich_root_format())
-        newrepos = dir.create_repository()
-        oldrepos.copy_content_into(newrepos)
-        mapping = oldrepos.get_mapping()
-        tree = newrepos.revision_tree(oldrepos.generate_revision_id(2, "", mapping))
-        self.assertEquals("bloe", tree.path2id("dir"))
-        self.assertIs(None, tree.path2id("dir/adir"))
-        self.assertEquals("bla", tree.path2id("bdir"))
-
-    def test_fetch_complex_ids_files(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
-        dir = dc.add_dir("dir")
-        dir.add_file("dir/adir").modify("contents")
-        dc.change_prop("bzr:revision-info", "")
-        dc.change_prop("bzr:file-ids", "dir\tbloe\ndir/adir\tbla\n")
-        dc.close()
-
-        dc = self.get_commit_editor(repos_url)
-        dc.add_file("bdir", "dir/adir")
-        dir = dc.open_dir("dir")
-        dir.delete("dir/adir")
-        dc.change_prop("bzr:revision-info", "properties: \n")
-        dc.change_prop("bzr:file-ids", "bdir\tbla\n")
-        dc.close()
-
-        oldrepos = Repository.open(repos_url)
-        dir = BzrDir.create("f", format.get_rich_root_format())
-        newrepos = dir.create_repository()
-        oldrepos.copy_content_into(newrepos)
-        mapping = oldrepos.get_mapping()
-        tree = newrepos.revision_tree(oldrepos.generate_revision_id(2, "", mapping))
-        self.assertEquals("bloe", tree.path2id("dir"))
-        self.assertIs(None, tree.path2id("dir/adir"))
-        mutter('entries: %r' % tree.inventory.entries())
-        self.assertEquals("bla", tree.path2id("bdir"))
-
     def test_fetch_copy_remove_old(self):
         repos_url = self.make_client('d', 'dc')
         self.build_tree({'dc/trunk/afile': 'foo', 'dc/tags': None, 
@@ -1735,23 +1661,6 @@
         self.assertEqual(oldrepos.generate_revision_id(2, "", mapping), 
                          inv2[inv2.path2id("bla")].revision)
 
-    def test_fetch_ghosts(self):
-        repos_url = self.make_repository('d')
-
-        dc = self.get_commit_editor(repos_url)
-        dc.add_file("bla").modify("data")
-        dc.change_prop("bzr:ancestry:v3-none", "aghost\n")
-        dc.close()
-
-        oldrepos = Repository.open(repos_url)
-        dir = BzrDir.create("f", format.get_rich_root_format())
-        newrepos = dir.create_repository()
-        oldrepos.copy_content_into(newrepos)
-        mapping = oldrepos.get_mapping()
-
-        rev = newrepos.get_revision(oldrepos.generate_revision_id(1, "", mapping))
-        self.assertTrue("aghost" in rev.parent_ids)
-
     def test_fetch_svk_merge(self):
         repos_url = self.make_repository('d')
 
@@ -1783,24 +1692,6 @@
         mutter('parent ids: %r' % rev.parent_ids)
         self.assertTrue(oldrepos.generate_revision_id(2, "branches/foo", mapping) in rev.parent_ids)
 
-    def test_fetch_invalid_ghosts(self):
-        repos_url = self.make_repository('d')
-        
-        dc = self.get_commit_editor(repos_url)
-        dc.add_file("bla").modify("data")
-        dc.change_prop("bzr:ancestry:v3-none", "a ghost\n")
-        dc.close()
-
-        oldrepos = Repository.open(repos_url)
-        dir = BzrDir.create("f", format.get_rich_root_format())
-        newrepos = dir.create_repository()
-        oldrepos.copy_content_into(newrepos)
-        
-        mapping = oldrepos.get_mapping()
-
-        rev = newrepos.get_revision(oldrepos.generate_revision_id(1, "", mapping))
-        self.assertEqual([oldrepos.generate_revision_id(0, "", mapping)], rev.parent_ids)
-
     def test_fetch_property_change_only(self):
         repos_url = self.make_repository('d')
         dc = self.get_commit_editor(repos_url)




More information about the bazaar-commits mailing list