Rev 4257: (ianc) per_repository/test_repository improvements (Robert Collins) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Mon Apr 6 06:20:55 BST 2009
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 4257
revision-id: pqm at pqm.ubuntu.com-20090406052052-fyud2y3vlghiasig
parent: pqm at pqm.ubuntu.com-20090406043355-a94p92pr191lpmv1
parent: ian.clatworthy at canonical.com-20090406030823-ge8tb6axp9qb5l9r
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2009-04-06 06:20:52 +0100
message:
(ianc) per_repository/test_repository improvements (Robert Collins)
modified:
bzrlib/tests/per_repository/test_repository.py test_repository.py-20060131092128-ad07f494f5c9d26c
------------------------------------------------------------
revno: 4254.1.1
revision-id: ian.clatworthy at canonical.com-20090406030823-ge8tb6axp9qb5l9r
parent: pqm at pqm.ubuntu.com-20090406024730-9559ntr7fvmgug6r
parent: ian.clatworthy at canonical.com-20090406022010-0g7p5bb1kxdn16ar
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: ianc-integration
timestamp: Mon 2009-04-06 13:08:23 +1000
message:
per_repository/test_repository improvements (Robert Collins)
modified:
bzrlib/tests/per_repository/test_repository.py test_repository.py-20060131092128-ad07f494f5c9d26c
------------------------------------------------------------
revno: 4253.3.1
revision-id: ian.clatworthy at canonical.com-20090406022010-0g7p5bb1kxdn16ar
parent: pqm at pqm.ubuntu.com-20090404000810-fqvkqdjx9s1h9ks3
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: bzr.bris-per-repo-test
timestamp: Mon 2009-04-06 12:20:10 +1000
message:
per_repository/test_repository improvements (Robert Collins)
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 2009-03-24 01:53:42 +0000
+++ b/bzrlib/tests/per_repository/test_repository.py 2009-04-06 02:20:10 +0000
@@ -255,7 +255,10 @@
tree = self.make_branch_and_tree('a')
tree.commit('')
second_revision = tree.commit('')
- inv = tree.branch.repository.revision_tree(second_revision).inventory
+ rev_tree = tree.branch.repository.revision_tree(second_revision)
+ rev_tree.lock_read()
+ self.addCleanup(rev_tree.unlock)
+ inv = rev_tree.inventory
rich_root = (inv.root.revision != second_revision)
self.assertEqual(rich_root,
tree.branch.repository.supports_rich_root())
@@ -363,17 +366,29 @@
wt.set_root_id('fixed-root')
wt.commit('lala!', rev_id='revision-1', allow_pointless=True)
tree = wt.branch.repository.revision_tree('revision-1')
- self.assertEqual('revision-1', tree.inventory.root.revision)
- expected = InventoryDirectory('fixed-root', '', None)
- expected.revision = 'revision-1'
- self.assertEqual([('', 'V', 'directory', 'fixed-root', expected)],
- list(tree.list_files(include_root=True)))
+ tree.lock_read()
+ try:
+ self.assertEqual('revision-1', tree.inventory.root.revision)
+ expected = InventoryDirectory('fixed-root', '', None)
+ expected.revision = 'revision-1'
+ self.assertEqual([('', 'V', 'directory', 'fixed-root', expected)],
+ list(tree.list_files(include_root=True)))
+ finally:
+ tree.unlock()
tree = self.callDeprecated(['NULL_REVISION should be used for the null'
' revision instead of None, as of bzr 0.91.'],
wt.branch.repository.revision_tree, None)
- self.assertEqual([], list(tree.list_files(include_root=True)))
+ tree.lock_read()
+ try:
+ self.assertEqual([], list(tree.list_files(include_root=True)))
+ finally:
+ tree.unlock()
tree = wt.branch.repository.revision_tree(NULL_REVISION)
- self.assertEqual([], list(tree.list_files(include_root=True)))
+ tree.lock_read()
+ try:
+ self.assertEqual([], list(tree.list_files(include_root=True)))
+ finally:
+ tree.unlock()
def test_get_revision_delta(self):
tree_a = self.make_branch_and_tree('a')
@@ -571,6 +586,8 @@
tree = self.make_branch_and_tree('.')
tree.commit('message', rev_id='rev_id')
rev_tree = tree.branch.repository.revision_tree(tree.last_revision())
+ rev_tree.lock_read()
+ self.addCleanup(rev_tree.unlock)
self.assertEqual('rev_id', rev_tree.inventory.root.revision)
def test_upgrade_from_format4(self):
@@ -744,10 +761,20 @@
repo.get_signature_text('A'))
def test_add_revision_inventory_sha1(self):
- repo = self.make_repository('repo')
inv = Inventory(revision_id='A')
inv.root.revision = 'A'
inv.root.file_id = 'fixed-root'
+ # Insert the inventory on its own to an identical repository, to get
+ # its sha1.
+ reference_repo = self.make_repository('reference_repo')
+ reference_repo.lock_write()
+ reference_repo.start_write_group()
+ inv_sha1 = reference_repo.add_inventory('A', inv, [])
+ reference_repo.abort_write_group()
+ reference_repo.unlock()
+ # Now insert a revision with this inventory, and it should get the same
+ # sha1.
+ repo = self.make_repository('repo')
repo.lock_write()
repo.start_write_group()
repo.add_revision('A', Revision('A', committer='B', timestamp=0,
@@ -755,9 +782,7 @@
repo.commit_write_group()
repo.unlock()
repo.lock_read()
- self.assertEquals(osutils.sha_string(
- repo._serializer.write_inventory_to_string(inv)),
- repo.get_revision('A').inventory_sha1)
+ self.assertEquals(inv_sha1, repo.get_revision('A').inventory_sha1)
repo.unlock()
def test_install_revisions(self):
More information about the bazaar-commits
mailing list