752
752
def test_from_revision_ids(self):
753
753
this, other = self.set_up_trees()
754
754
self.assertRaises(errors.NoSuchRevision, Merger.from_revision_ids,
755
progress.DummyProgress(), this, 'rev2b')
756
756
this.lock_write()
757
757
self.addCleanup(this.unlock)
758
merger = Merger.from_revision_ids(progress.DummyProgress(), this,
758
merger = Merger.from_revision_ids(None, this,
759
759
'rev2b', other_branch=other.branch)
760
760
self.assertEqual('rev2b', merger.other_rev_id)
761
761
self.assertEqual('rev1', merger.base_rev_id)
762
merger = Merger.from_revision_ids(progress.DummyProgress(), this,
762
merger = Merger.from_revision_ids(None, this,
763
763
'rev2b', 'rev2a', other_branch=other.branch)
764
764
self.assertEqual('rev2a', merger.base_rev_id)
766
766
def test_from_uncommitted(self):
767
767
this, other = self.set_up_trees()
768
merger = Merger.from_uncommitted(this, other, progress.DummyProgress())
768
merger = Merger.from_uncommitted(this, other, None)
769
769
self.assertIs(other, merger.other_tree)
770
770
self.assertIs(None, merger.other_rev_id)
771
771
self.assertEqual('rev2b', merger.base_rev_id)
784
784
other.lock_read()
785
785
self.addCleanup(other.unlock)
786
786
merger, verified = Merger.from_mergeable(this, md,
787
progress.DummyProgress())
789
789
merger, verified = Merger.from_mergeable(this, md,
790
progress.DummyProgress())
791
791
self.assertEqual('inapplicable', verified)
792
792
self.assertEqual('rev3', merger.other_rev_id)
793
793
self.assertEqual('rev1', merger.base_rev_id)
794
794
md.base_revision_id = 'rev2b'
795
795
merger, verified = Merger.from_mergeable(this, md,
796
progress.DummyProgress())
797
797
self.assertEqual('rev2b', merger.base_rev_id)
799
799
def test_from_mergeable_old_merge_directive(self):
803
803
md = merge_directive.MergeDirective.from_objects(
804
804
other.branch.repository, 'rev3', 0, 0, 'this')
805
805
merger, verified = Merger.from_mergeable(this, md,
806
progress.DummyProgress())
807
807
self.assertEqual('rev3', merger.other_rev_id)
808
808
self.assertEqual('rev1', merger.base_rev_id)