def test_merge_non_conflicting(self): merge = Merge(closing=self.cs5, continuing=self.cs3) self.assert_false(merge.is_conflicting()) mergeset = merge.create_mergeset() self.assert_true(mergeset.id) self.assert_equal(mergeset.follows_id, self.cs3.id) self.assert_equal(mergeset.closes_id, self.cs5.id) changes = mergeset.changes self.assert_equal(len(changes), 1) self.assert_equal(changes[0].old['name'], 'nameone') self.assert_equal(changes[0].new['name'], 'namethree') self.assert_false('title' in changes[0].new) self.assert_true(mergeset.get_meta().get('log_message')) self.assert_true(mergeset.get_meta().get('author')) # More tests to calculate Range from cs0 to mergeset. model.Session.commit() range = Range(self.cs0, mergeset) changes = range.calc_changes() self.assert_equal(len(changes), 2) changes0 = changes[0] changes1 = changes[1] self.assert_false(changes0.old) self.assert_false(changes1.old) self.assert_true(changes0.new) self.assert_true(changes1.new) self.assert_true(changes0.new['name'] in [self.name0, self.name3]) self.assert_true(changes1.new['name'] in [self.name0, self.name3]) self.assert_true(changes0.new['name'] != changes1.new['name']) if changes0.new['name'] == self.name0: self.assert_equal(changes0.new['title'], self.title0) elif changes0.new['name'] == self.name3: self.assert_equal(changes0.new['title'], self.title3) if changes1.new['name'] == self.name0: self.assert_equal(changes1.new['title'], self.title0) elif changes1.new['name'] == self.name3: self.assert_equal(changes1.new['title'], self.title3)
def test_merge_conflicting(self): merge = Merge(closing=self.cs6, continuing=self.cs3) self.assert_true(merge.is_conflicting()) mergeset = merge.create_mergeset(resolve_class=AutoResolve) self.assert_true(mergeset.id) self.assert_equal(mergeset.follows_id, self.cs3.id) self.assert_equal(mergeset.closes_id, self.cs6.id) changes = mergeset.changes self.assert_equal(len(mergeset.changes), 0) self.assert_true(mergeset.get_meta().get('log_message')) self.assert_true(mergeset.get_meta().get('author')) merge = Merge(closing=self.cs6, continuing=self.cs3) self.assert_true(merge.is_conflicting()) mergeset = merge.create_mergeset( resolve_class=AutoResolvePreferClosing) self.assert_true(mergeset.id) self.assert_equal(mergeset.follows_id, self.cs3.id) self.assert_equal(mergeset.closes_id, self.cs6.id) changes = mergeset.changes self.assert_equal(len(mergeset.changes), 1) self.assert_true(mergeset.get_meta().get('log_message')) self.assert_true(mergeset.get_meta().get('author'))
def test_merge_conflicting(self): merge = Merge(closing=self.cs6, continuing=self.cs3) self.assert_true(merge.is_conflicting()) mergeset = merge.create_mergeset(resolve_class=AutoResolve) self.assert_true(mergeset.id) self.assert_equal(mergeset.follows_id, self.cs3.id) self.assert_equal(mergeset.closes_id, self.cs6.id) changes = mergeset.changes self.assert_equal(len(mergeset.changes), 0) self.assert_true(mergeset.get_meta().get('log_message')) self.assert_true(mergeset.get_meta().get('author')) merge = Merge(closing=self.cs6, continuing=self.cs3) self.assert_true(merge.is_conflicting()) mergeset = merge.create_mergeset(resolve_class=AutoResolvePreferClosing) self.assert_true(mergeset.id) self.assert_equal(mergeset.follows_id, self.cs3.id) self.assert_equal(mergeset.closes_id, self.cs6.id) changes = mergeset.changes self.assert_equal(len(mergeset.changes), 1) self.assert_true(mergeset.get_meta().get('log_message')) self.assert_true(mergeset.get_meta().get('author'))