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