This is an archive of the discontinued Mercurial Phabricator instance.

tests: add criss cross merging tests whose behavior need to be fixed
ClosedPublic

Authored by pulkit on Aug 24 2020, 10:14 AM.

Details

Summary

Merging two changesets can mark a file as removed post merge. However, in some
cases, a user might not want to remove that file and they revert the removal
back and commit the merge. All this works perfectly well.

However, when we do criss-cross merges with such merge where user explicitly
choose to revert the removal with one where another user choose the removal,
we does not get any conflict.

The intent here is conflicting and merge should result in conflicts. One user
merged and want to keep the file while other user merged and want to remove the
file. Merging those merges should result in conflicts.

This patch adds test cases for these cases.

Diff Detail

Repository
rHG Mercurial
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

pulkit created this revision.Aug 24 2020, 10:14 AM

How does this related to the test I handed to you 10 day ago. Is this testing a new case where we could get criss cross merge to behave right or is this a variation of the one I wrote?

pulkit retitled this revision from tests: add more criss-cross merging tests where behavior needs to be fixed to tests: add criss cross merging tests whose behavior need to be fixed.Aug 27 2020, 5:37 AM
pulkit edited the summary of this revision. (Show Details)
pulkit updated this revision to Diff 22472.

How does this related to the test I handed to you 10 day ago. Is this testing a new case where we could get criss cross merge to behave right or is this a variation of the one I wrote?

Updated to use the same one.

For reviewers: I admit that this series is going to be not-easy to review. It took me quite few time to understand what the issue is. The series except for this patch, starts with minor improvements to merge code and later on try to fix bugs related to criss cross merging. I will be glad to have a video call if anyone needs help with understanding the series.

marmoute accepted this revision.Sep 11 2020, 4:52 AM

thanks for the extensive documentation.

This revision was not accepted when it landed; it landed in state Needs Review.
This revision was automatically updated to reflect the committed changes.