50
51
"%s isn't a knit format" % self.repository_format)
52
53
repo = self.make_repository('broken')
54
repo.start_write_group()
54
with repo.lock_write(), WriteGroup(repo):
56
55
inv = inventory.Inventory(revision_id=b'revision-id')
57
56
inv.root.revision = b'revision-id'
58
57
inv_sha1 = repo.add_inventory(b'revision-id', inv, [])
60
59
root_id = inv.root.file_id
61
60
repo.texts.add_lines((root_id, b'revision-id'), [], [])
62
61
revision = _mod_revision.Revision(b'revision-id',
63
committer='jrandom@example.com', timestamp=0,
64
inventory_sha1=inv_sha1, timezone=0, message='message',
62
committer='jrandom@example.com', timestamp=0,
63
inventory_sha1=inv_sha1, timezone=0, message='message',
66
65
# Manually add the revision text using the RevisionStore API, with
68
67
rev_text = repo._serializer.write_revision_to_string(revision)
69
repo.revisions.add_lines((revision.revision_id,),
70
[(b'incorrect-parent',)],
68
repo.revisions.add_lines(
69
(revision.revision_id,), [(b'incorrect-parent',)],
71
70
osutils.split_lines(rev_text))
73
repo.abort_write_group()
77
repo.commit_write_group()
81
73
self.addCleanup(repo.unlock)