Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PropertyClasses/ClosingStructuresFailureMechanismProperties.cs =================================================================== diff -u -r827b1bff12215404fadfe129f36a48f98ff772c7 -r07da6dd4a8af30f8dc42360f19a56c9cef4bc132 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PropertyClasses/ClosingStructuresFailureMechanismProperties.cs (.../ClosingStructuresFailureMechanismProperties.cs) (revision 827b1bff12215404fadfe129f36a48f98ff772c7) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PropertyClasses/ClosingStructuresFailureMechanismProperties.cs (.../ClosingStructuresFailureMechanismProperties.cs) (revision 07da6dd4a8af30f8dc42360f19a56c9cef4bc132) @@ -39,18 +39,19 @@ { private const int namePropertyIndex = 1; private const int codePropertyIndex = 2; - private const int contributionPropertyIndex = 3; - private const int isRelevantPropertyIndex = 4; - private const int gravitationalAccelerationPropertyIndex = 5; + private const int groupPropertyIndex = 3; + private const int contributionPropertyIndex = 4; + private const int isRelevantPropertyIndex = 5; + private const int gravitationalAccelerationPropertyIndex = 6; - private const int cPropertyIndex = 6; - private const int n2APropertyIndex = 7; - private const int nPropertyIndex = 8; + private const int cPropertyIndex = 7; + private const int n2APropertyIndex = 8; + private const int nPropertyIndex = 9; - private const int modelFactorOvertoppingFlowPropertyIndex = 9; - private const int modelFactorStorageVolumePropertyIndex = 10; - private const int modelFactorSubCriticalFlowPropertyIndex = 11; - private const int modelFactorInflowVolumePropertyIndex = 12; + private const int modelFactorOvertoppingFlowPropertyIndex = 10; + private const int modelFactorStorageVolumePropertyIndex = 11; + private const int modelFactorSubCriticalFlowPropertyIndex = 12; + private const int modelFactorInflowVolumePropertyIndex = 13; /// /// Creates a new instance of . @@ -161,6 +162,18 @@ } } + [PropertyOrder(groupPropertyIndex)] + [ResourcesCategory(typeof(RingtoetsCommonFormsResources), nameof(RingtoetsCommonFormsResources.Categories_General))] + [ResourcesDisplayName(typeof(RingtoetsCommonFormsResources), nameof(RingtoetsCommonFormsResources.FailureMechanism_Group_DisplayName))] + [ResourcesDescription(typeof(RingtoetsCommonFormsResources), nameof(RingtoetsCommonFormsResources.FailureMechanism_Group_Description))] + public int Group + { + get + { + return data.Group; + } + } + [DynamicVisible] [PropertyOrder(contributionPropertyIndex)] [ResourcesCategory(typeof(RingtoetsCommonFormsResources), nameof(RingtoetsCommonFormsResources.Categories_General))] Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PropertyClasses/ClosingStructuresFailureMechanismPropertiesTest.cs =================================================================== diff -u -r827b1bff12215404fadfe129f36a48f98ff772c7 -r07da6dd4a8af30f8dc42360f19a56c9cef4bc132 --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PropertyClasses/ClosingStructuresFailureMechanismPropertiesTest.cs (.../ClosingStructuresFailureMechanismPropertiesTest.cs) (revision 827b1bff12215404fadfe129f36a48f98ff772c7) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PropertyClasses/ClosingStructuresFailureMechanismPropertiesTest.cs (.../ClosingStructuresFailureMechanismPropertiesTest.cs) (revision 07da6dd4a8af30f8dc42360f19a56c9cef4bc132) @@ -65,6 +65,7 @@ Assert.AreSame(failureMechanism, properties.Data); Assert.AreEqual(failureMechanism.Name, properties.Name); Assert.AreEqual(failureMechanism.Code, properties.Code); + Assert.AreEqual(failureMechanism.Group, properties.Group); Assert.AreEqual(failureMechanism.Contribution, properties.Contribution); Assert.AreEqual(isRelevant, properties.IsRelevant); @@ -102,7 +103,7 @@ const string modelSettingsCategory = "Modelinstellingen"; PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); - Assert.AreEqual(12, dynamicProperties.Count); + Assert.AreEqual(13, dynamicProperties.Count); PropertyDescriptor nameProperty = dynamicProperties[0]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(nameProperty, @@ -118,72 +119,79 @@ "Het label van het toetsspoor.", true); - PropertyDescriptor contributionProperty = dynamicProperties[2]; + PropertyDescriptor groupProperty = dynamicProperties[2]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(groupProperty, + generalCategory, + "Groep", + "De groep waar het toetsspoor toe behoort.", + true); + + PropertyDescriptor contributionProperty = dynamicProperties[3]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(contributionProperty, generalCategory, "Faalkansbijdrage [%]", "Procentuele bijdrage van dit toetsspoor aan de totale overstromingskans van het traject.", true); - PropertyDescriptor isRelevantProperty = dynamicProperties[3]; + PropertyDescriptor isRelevantProperty = dynamicProperties[4]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(isRelevantProperty, generalCategory, "Is relevant", "Geeft aan of dit toetsspoor relevant is of niet.", true); - PropertyDescriptor gravitationalAccelerationProperty = dynamicProperties[4]; + PropertyDescriptor gravitationalAccelerationProperty = dynamicProperties[5]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(gravitationalAccelerationProperty, generalCategory, "Valversnelling [m/s²]", "Valversnelling.", true); - PropertyDescriptor cProperty = dynamicProperties[5]; + PropertyDescriptor cProperty = dynamicProperties[6]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(cProperty, lengthEffectCategory, "C [-]", "De parameter 'C' die gebruikt wordt om het lengte-effect te berekenen.", true); - PropertyDescriptor n2AProperty = dynamicProperties[6]; + PropertyDescriptor n2AProperty = dynamicProperties[7]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(n2AProperty, lengthEffectCategory, "2NA [-]", "De parameter '2NA' die gebruikt wordt om het lengte-effect te berekenen."); - PropertyDescriptor nProperty = dynamicProperties[7]; + PropertyDescriptor nProperty = dynamicProperties[8]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(nProperty, lengthEffectCategory, "N* [-]", "De parameter 'N' die gebruikt wordt om het lengte-effect mee te nemen in de beoordeling (afgerond).", true); - PropertyDescriptor modelFactorOvertoppingFlowProperty = dynamicProperties[8]; + PropertyDescriptor modelFactorOvertoppingFlowProperty = dynamicProperties[9]; Assert.IsInstanceOf(modelFactorOvertoppingFlowProperty.Converter); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(modelFactorOvertoppingFlowProperty, modelSettingsCategory, "Modelfactor overslagdebiet [-]", "Modelfactor voor het overslagdebiet.", true); - PropertyDescriptor modelFactorStorageVolumeProperty = dynamicProperties[9]; + PropertyDescriptor modelFactorStorageVolumeProperty = dynamicProperties[10]; Assert.IsInstanceOf(modelFactorStorageVolumeProperty.Converter); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(modelFactorStorageVolumeProperty, modelSettingsCategory, "Modelfactor kombergend vermogen [-]", "Modelfactor kombergend vermogen.", true); - PropertyDescriptor modelFactorSubCriticalFlowProperty = dynamicProperties[10]; + PropertyDescriptor modelFactorSubCriticalFlowProperty = dynamicProperties[11]; Assert.IsInstanceOf(modelFactorSubCriticalFlowProperty.Converter); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(modelFactorSubCriticalFlowProperty, modelSettingsCategory, "Modelfactor voor onvolkomen stroming [-]", "Modelfactor voor onvolkomen stroming.", true); - PropertyDescriptor modelFactorInflowVolumeProperty = dynamicProperties[11]; + PropertyDescriptor modelFactorInflowVolumeProperty = dynamicProperties[12]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(modelFactorInflowVolumeProperty, modelSettingsCategory, "Modelfactor instromend volume [-]", @@ -205,7 +213,7 @@ const string generalCategory = "Algemeen"; PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); - Assert.AreEqual(3, dynamicProperties.Count); + Assert.AreEqual(4, dynamicProperties.Count); PropertyDescriptor nameProperty = dynamicProperties[0]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(nameProperty, @@ -221,7 +229,14 @@ "Het label van het toetsspoor.", true); - PropertyDescriptor isRelevantProperty = dynamicProperties[2]; + PropertyDescriptor groupProperty = dynamicProperties[2]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(groupProperty, + generalCategory, + "Groep", + "De groep waar het toetsspoor toe behoort.", + true); + + PropertyDescriptor isRelevantProperty = dynamicProperties[3]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(isRelevantProperty, generalCategory, "Is relevant", @@ -296,6 +311,7 @@ // Call & Assert Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Name))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Code))); + Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.Group))); Assert.IsTrue(properties.DynamicVisibleValidationMethod(nameof(properties.IsRelevant))); Assert.AreEqual(isRelevant, properties.DynamicVisibleValidationMethod(nameof(properties.Contribution)));