Part of bzrlib.tests.per_versionedfile View In Hierarchy
Known subclasses: bzrlib.tests.per_versionedfile.TestWeaveMerge
Method | doMerge | Undocumented |
Method | testOneInsert | Undocumented |
Method | testSeparateInserts | Undocumented |
Method | testSameInsert | Undocumented |
Method | testOverlappedInsert | Undocumented |
Method | testClashReplace | Undocumented |
Method | testNonClashInsert1 | Undocumented |
Method | testNonClashInsert2 | Undocumented |
Method | testDeleteAndModify | Clashing delete and modification. |
Method | test_weave_merge_conflicts | Undocumented |
Method | test_deletion_extended | One side deletes, the other deletes more. |
Method | test_deletion_overlap | Delete overlapping regions with no other conflict. |
Method | test_agreement_deletion | Agree to delete some lines, without conflicts. |
Method | test_sync_on_deletion | Specific case of merge where we can synchronize incorrectly. |
Method | _test_merge_from_strings | Undocumented |
If one side modifies a region and the other deletes it then there should be a conflict with one side blank.
Arguably it'd be better to treat these as agreement, rather than conflict, but for now conflict is safer.
A previous version of the weave merge concluded that the two versions agreed on deleting line 2, and this could be a synchronization point. Line 1 was then considered in isolation, and thought to be deleted on both sides.
It's better to consider the whole thing as a disagreement region.