mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-25 06:38:13 -05:00
#14746 Fix duplicate AppEnum serialization text and detect it in addItem
RimGridCalculation::AdditionalCasesType::ALL_CASES and RimIntersectionFilterEnum::INTERSECT_FILTER_BETWEEN both reused the serialization text of a sibling enum value (NONE and INTERSECT_SHOW_BELOW respectively), so they would silently round-trip as the wrong value when read back from a project file. AppEnumMapperBase::addItem only asserted alias uniqueness, not text uniqueness, so this class of bug went undetected. Add a CAF_ASSERT checking that a new enum value's serialization text does not match an existing value's text or aliases. Found while investigating the AppEnum alias-duplication note in #14654.
This commit is contained in:
1 parent
98c84cde99
commit
64361c2f78
3 files changed
+9
-2
No files matched your search
@@ -28,7 +28,7 @@ void caf::AppEnum<RimIntersectionFilterEnum>::setUp()
|
||||
addItem( RimIntersectionFilterEnum::INTERSECT_FILTER_NONE, "INTERSECT_SHOW_ALL", "Disabled" );
|
||||
addItem( RimIntersectionFilterEnum::INTERSECT_FILTER_ABOVE, "INTERSECT_SHOW_ABOVE", "Above" );
|
||||
addItem( RimIntersectionFilterEnum::INTERSECT_FILTER_BELOW, "INTERSECT_SHOW_BELOW", "Below" );
|
||||
addItem( RimIntersectionFilterEnum::INTERSECT_FILTER_BETWEEN, "INTERSECT_SHOW_BELOW", "Between" );
|
||||
addItem( RimIntersectionFilterEnum::INTERSECT_FILTER_BETWEEN, "INTERSECT_SHOW_BETWEEN", "Between" );
|
||||
setDefault( RimIntersectionFilterEnum::INTERSECT_FILTER_BETWEEN );
|
||||
}
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@ void caf::AppEnum<RimGridCalculation::AdditionalCasesType>::setUp()
|
||||
addItem( RimGridCalculation::AdditionalCasesType::NONE, "NONE", "None" );
|
||||
addItem( RimGridCalculation::AdditionalCasesType::GRID_CASE_GROUP, "GRID_CASE_GROUP", "Case Group" );
|
||||
addItem( RimGridCalculation::AdditionalCasesType::ENSEMBLE, "ENSEMBLE", "Ensemble" );
|
||||
addItem( RimGridCalculation::AdditionalCasesType::ALL_CASES, "NONE", "All Cases" );
|
||||
addItem( RimGridCalculation::AdditionalCasesType::ALL_CASES, "ALL_CASES", "All Cases" );
|
||||
setDefault( RimGridCalculation::AdditionalCasesType::NONE );
|
||||
}
|
||||
}; // namespace caf
|
||||
|
||||
Reference in new issue
Block a user