291
297
self.assertEqual('Z', start_revid)
292
298
self.assertEqual(set([history._rev_indices[x] for x in 'ZYXWVU']),
302
class TestHistoryGetChangedUncached(TestCaseWithExamples):
304
def test_native(self):
305
history = self.make_linear_ancestry()
306
changes = history.get_changes_uncached(['rev-1', 'rev-2'])
307
self.assertEquals(2, len(changes))
308
self.assertEquals('rev-1', changes[0].revid)
309
self.assertEquals('rev-2', changes[1].revid)
310
self.assertIs(None, getattr(changes[0], 'foreign_vcs', None))
311
self.assertIs(None, getattr(changes[0], 'foreign_revid', None))
313
def test_foreign(self):
314
# Test with a mocked foreign revision, as it's not possible
315
# to rely on any foreign plugins being installed.
316
history = self.make_linear_ancestry()
317
foreign_vcs = ForeignVcs(None, "vcs")
318
foreign_vcs.show_foreign_revid = repr
319
foreign_rev = ForeignRevision(("uuid", 1234), VcsMapping(foreign_vcs),
320
"revid-in-bzr", message="message",
321
timestamp=234423423.3)
322
change = history._change_from_revision(foreign_rev)
323
self.assertEquals('revid-in-bzr', change.revid)
324
self.assertEquals("('uuid', 1234)", change.foreign_revid)
325
self.assertEquals("vcs", change.foreign_vcs)