Rev 3169: Failure cases for parsing tree references in entries. in http://people.ubuntu.com/~robertc/baz2.0/inventory.journalled
Robert Collins
robertc at robertcollins.net
Thu Jan 3 23:06:31 GMT 2008
At http://people.ubuntu.com/~robertc/baz2.0/inventory.journalled
------------------------------------------------------------
revno: 3169
revision-id:robertc at robertcollins.net-20080103230626-71rwt9wb1er9hhan
parent: robertc at robertcollins.net-20080103230401-uq4j501h7v8lwuj5
committer: Robert Collins <robertc at robertcollins.net>
branch nick: inventory.journalled
timestamp: Fri 2008-01-04 10:06:26 +1100
message:
Failure cases for parsing tree references in entries.
modified:
bzrlib/journalled_inventory.py journalled_inventory-20080103020931-0ht5n40kwc0p7fy1-1
bzrlib/tests/test_journalled_inv.py test_journalled_inv.-20080103012121-ny2w9slze5jgty8i-1
=== modified file 'bzrlib/journalled_inventory.py'
--- a/bzrlib/journalled_inventory.py 2008-01-03 23:04:01 +0000
+++ b/bzrlib/journalled_inventory.py 2008-01-03 23:06:26 +0000
@@ -190,6 +190,8 @@
elif not self._versioned_root and (last_modified != 'null:' or
file_id != 'TREE_ROOT'):
raise errors.BzrError("Versioned root found: %r" % line)
+ if not self._tree_references and content.startswith('tree\x00'):
+ raise errors.BzrError("Tree reference found: %r" % line)
if len(by_id) + 2 != len(lines):
raise errors.BzrError(
"duplicate file id in journal entry %r" % lines)
=== modified file 'bzrlib/tests/test_journalled_inv.py'
--- a/bzrlib/tests/test_journalled_inv.py 2008-01-03 23:04:01 +0000
+++ b/bzrlib/tests/test_journalled_inv.py 2008-01-03 23:06:26 +0000
@@ -287,6 +287,12 @@
self.assertRaises(errors.BzrError,
journal.parse_text_bytes, root_only_unversioned)
+ def test_parse_tree_when_disabled(self):
+ journal = journalled_inventory.InventoryJournal(versioned_root=True,
+ tree_references=False)
+ self.assertRaises(errors.BzrError,
+ journal.parse_text_bytes, reference_lines)
+
class TestContent(TestCase):
More information about the bazaar-commits
mailing list