567
567
self.check_read_write(k)
570
class Conflicts(TestBase):
571
"""Test detection of conflicting regions during a merge.
573
A base version is inserted, then two descendents try to
574
insert different lines in the same place. These should be
575
reported as a possible conflict and forwarded to the user."""
580
k.add([], ['aaa', 'bbb'])
581
k.add([0], ['aaa', '111', 'bbb'])
582
k.add([1], ['aaa', '222', 'bbb'])
584
merged = k.merge([1, 2])
586
self.assertEquals([[['aaa']],
592
class NonConflict(TestBase):
593
"""Two descendants insert compatible changes.
595
No conflict should be reported."""
600
k.add([], ['aaa', 'bbb'])
601
k.add([0], ['111', 'aaa', 'ccc', 'bbb'])
602
k.add([1], ['aaa', 'ccc', 'bbb', '222'])
608
570
class AutoMerge(TestBase):
609
571
def runTest(self):
621
583
self.log('k._l=' + pformat(k._l))
623
m = list(k.mash_iter([0, 1, 2]))
585
m = list(k.merge_iter([0, 1, 2]))
625
587
self.assertEqual(m,
626
588
['header', 'aaa',