3-way merge of cardinality of an element #1990
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
In PR #1826 we introduced a bug in existing functionality. We resolved that now by a 3-way merge of the cardinality of
The most constrained value will win. Let's say we have the following cardinalities on an element:
0..*
1..*
1..1
Then the result cardinality of the element would be:
1..1
This behavior is also applied to the "normal" merge of
Min
: in the past the Min value of the differential was copied to the snapshot (when it exists). Now both Min values (snap and diff) are compared first, and the highest value wins.Related issues
Resolves #1981.
Testing
SnapshotGeneratorTest2.TestMinMax
SnapshotGeneratorTest2.CardinalityOfExtension
FirelyTeam Checklist