Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingDistributionPropertiesBase.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingDistributionPropertiesBase.cs (.../ConfirmingDistributionPropertiesBase.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingDistributionPropertiesBase.cs (.../ConfirmingDistributionPropertiesBase.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -44,10 +44,18 @@ private readonly IObservablePropertyChangeHandler changeHandler; /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + protected ConfirmingDistributionPropertiesBase(TDistribution distribution) + : this(DistributionPropertiesReadOnly.All, distribution, null) {} + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be marked as read-only. - /// The data of the to create the properties for. + /// The to create the properties for. /// The handler responsible for handling effects of a property change. /// Thrown when is null /// or when any number of properties in this class is editable and any other parameter is null. Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingLogNormalDistributionProperties.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingLogNormalDistributionProperties.cs (.../ConfirmingLogNormalDistributionProperties.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingLogNormalDistributionProperties.cs (.../ConfirmingLogNormalDistributionProperties.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -35,6 +35,13 @@ public class ConfirmingLogNormalDistributionProperties : ConfirmingDistributionPropertiesBase { /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + public ConfirmingLogNormalDistributionProperties(LogNormalDistribution distribution) : base(distribution) {} + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingNormalDistributionProperties.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingNormalDistributionProperties.cs (.../ConfirmingNormalDistributionProperties.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingNormalDistributionProperties.cs (.../ConfirmingNormalDistributionProperties.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -35,6 +35,13 @@ public class ConfirmingNormalDistributionProperties : ConfirmingDistributionPropertiesBase { /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + public ConfirmingNormalDistributionProperties(NormalDistribution distribution) : base(distribution) { } + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBase.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBase.cs (.../ConfirmingVariationCoefficientDistributionPropertiesBase.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBase.cs (.../ConfirmingVariationCoefficientDistributionPropertiesBase.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -44,6 +44,14 @@ private readonly IObservablePropertyChangeHandler changeHandler; /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + public ConfirmingVariationCoefficientDistributionPropertiesBase(TDistribution distribution) + : this(VariationCoefficientDistributionPropertiesReadOnly.All, distribution, null) {} + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be marked as read-only. Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionProperties.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionProperties.cs (.../ConfirmingVariationCoefficientLogNormalDistributionProperties.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionProperties.cs (.../ConfirmingVariationCoefficientLogNormalDistributionProperties.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -34,6 +34,13 @@ public class ConfirmingVariationCoefficientLogNormalDistributionProperties : ConfirmingVariationCoefficientDistributionPropertiesBase { /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + public ConfirmingVariationCoefficientLogNormalDistributionProperties(VariationCoefficientLogNormalDistribution distribution) : base(distribution) { } + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionProperties.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionProperties.cs (.../ConfirmingVariationCoefficientNormalDistributionProperties.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionProperties.cs (.../ConfirmingVariationCoefficientNormalDistributionProperties.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -34,6 +34,13 @@ public class ConfirmingVariationCoefficientNormalDistributionProperties : ConfirmingVariationCoefficientDistributionPropertiesBase { /// + /// Creates a new instance of + /// in which the properties of are displayed read-only. + /// + /// The to create the properties for. + public ConfirmingVariationCoefficientNormalDistributionProperties(VariationCoefficientNormalDistribution distribution) : base(distribution) { } + + /// /// Creates a new instance of . /// /// Indicates which properties, if any, should be Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingDistributionPropertiesBaseTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingDistributionPropertiesBaseTest.cs (.../ConfirmingDistributionPropertiesBaseTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingDistributionPropertiesBaseTest.cs (.../ConfirmingDistributionPropertiesBaseTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -37,6 +37,25 @@ public class ConfirmingDistributionPropertiesBaseTest { [Test] + public void Constructor_WithData_ReadOnlyProperties() + { + // Setup + var mocks = new MockRepository(); + var distribution = mocks.Stub(); + mocks.ReplayAll(); + + // Call + var properties = new SimpleDistributionProperties(distribution); + + // Assert + Assert.IsInstanceOf>(properties); + Assert.AreSame(distribution, properties.Data); + + AssertPropertiesInState(properties, true, true); + mocks.VerifyAll(); + } + + [Test] public void Constructor_ReadOnlyWithData_ExpectedValues() { // Setup @@ -107,29 +126,7 @@ var properties = new SimpleDistributionProperties(propertiesReadOnly, distribution, handler); // Assert - PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); - Assert.AreEqual(3, dynamicProperties.Count); - - PropertyDescriptor distributionTypeProperty = dynamicProperties[0]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(distributionTypeProperty, - "Misc", - "Type verdeling", - "Het soort kansverdeling waarin deze parameter gedefinieerd wordt.", - true); - - PropertyDescriptor meanProperty = dynamicProperties[1]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, - "Misc", - "Verwachtingswaarde", - "", - expectMeanReadOnly); - - PropertyDescriptor standardDeviationProperty = dynamicProperties[2]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(standardDeviationProperty, - "Misc", - "Standaardafwijking", - "", - expectStandardDeviationReadOnly); + AssertPropertiesInState(properties, expectMeanReadOnly, expectStandardDeviationReadOnly); mocks.VerifyAll(); } @@ -222,9 +219,9 @@ var newMeanValue = new RoundedDouble(3, 20); var handler = new CalculationInputSetPropertyValueAfterConfirmationParameterTester(new[] - { - observerableMock - }); + { + observerableMock + }); var properties = new SimpleDistributionProperties( DistributionPropertiesReadOnly.None, @@ -277,9 +274,9 @@ var newStandardDeviationValue = new RoundedDouble(3, 20); var handler = new CalculationInputSetPropertyValueAfterConfirmationParameterTester(new[] - { - observerableMock - }); + { + observerableMock + }); var properties = new SimpleDistributionProperties( DistributionPropertiesReadOnly.None, @@ -294,10 +291,39 @@ mocks.VerifyAll(); } + private static void AssertPropertiesInState(SimpleDistributionProperties properties, bool meanReadOnly, bool deviationReadOnly) + { + PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); + Assert.AreEqual(3, dynamicProperties.Count); + + PropertyDescriptor distributionTypeProperty = dynamicProperties[0]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(distributionTypeProperty, + "Misc", + "Type verdeling", + "Het soort kansverdeling waarin deze parameter gedefinieerd wordt.", + true); + + PropertyDescriptor meanProperty = dynamicProperties[1]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, + "Misc", + "Verwachtingswaarde", + "", + meanReadOnly); + + PropertyDescriptor standardDeviationProperty = dynamicProperties[2]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(standardDeviationProperty, + "Misc", + "Standaardafwijking", + "", + deviationReadOnly); + } + private class SimpleDistributionProperties : ConfirmingDistributionPropertiesBase { + public SimpleDistributionProperties(IDistribution distribution) : base(distribution) {} + public SimpleDistributionProperties(DistributionPropertiesReadOnly propertiesReadOnly, - IDistribution distribution, + IDistribution distribution, IObservablePropertyChangeHandler handler) : base(propertiesReadOnly, distribution, handler) {} Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingLogNormalDistributionPropertiesTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingLogNormalDistributionPropertiesTest.cs (.../ConfirmingLogNormalDistributionPropertiesTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingLogNormalDistributionPropertiesTest.cs (.../ConfirmingLogNormalDistributionPropertiesTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -40,6 +40,23 @@ } [Test] + public void Constructor_WithDistribution_ExpectedValues() + { + // Setup + var distribution = new LogNormalDistribution(); + + // Call + var properties = new ConfirmingLogNormalDistributionProperties(distribution); + + // Assert + Assert.IsInstanceOf>(properties); + Assert.AreSame(distribution, properties.Data); + Assert.AreEqual("Lognormaal", properties.DistributionType); + + AssertPropertiesInState(properties, true, true); + } + + [Test] public void Constructor_WithParameters_ExpectedValues() { // Setup @@ -58,6 +75,13 @@ Assert.AreSame(distribution, properties.Data); Assert.AreEqual("Lognormaal", properties.DistributionType); + AssertPropertiesInState(properties, false, false); + + mockRepository.VerifyAll(); + } + + private static void AssertPropertiesInState(ConfirmingLogNormalDistributionProperties properties, bool meanReadOnly, bool deviationReadOnly) + { PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); Assert.AreEqual(3, dynamicProperties.Count); @@ -72,15 +96,15 @@ PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, "Misc", "Verwachtingswaarde", - "De gemiddelde waarde van de lognormale verdeling."); + "De gemiddelde waarde van de lognormale verdeling.", + meanReadOnly); PropertyDescriptor standardDeviationProperty = dynamicProperties[2]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(standardDeviationProperty, "Misc", "Standaardafwijking", - "De standaardafwijking van de lognormale verdeling."); - - mockRepository.VerifyAll(); + "De standaardafwijking van de lognormale verdeling.", + deviationReadOnly); } } } \ No newline at end of file Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingNormalDistributionPropertiesTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingNormalDistributionPropertiesTest.cs (.../ConfirmingNormalDistributionPropertiesTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingNormalDistributionPropertiesTest.cs (.../ConfirmingNormalDistributionPropertiesTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -40,6 +40,23 @@ } [Test] + public void Constructor_WithDistribution_ExpectedValues() + { + // Setup + var distribution = new NormalDistribution(); + + // Call + var properties = new ConfirmingNormalDistributionProperties(distribution); + + // Assert + Assert.IsInstanceOf>(properties); + Assert.AreSame(distribution, properties.Data); + Assert.AreEqual("Normaal", properties.DistributionType); + + AssertPropertiesInState(properties, true, true); + } + + [Test] public void Constructor_WithParameters_ExpectedValues() { // Setup @@ -58,6 +75,13 @@ Assert.AreSame(distribution, properties.Data); Assert.AreEqual("Normaal", properties.DistributionType); + AssertPropertiesInState(properties, false, false); + + mockRepository.VerifyAll(); + } + + private static void AssertPropertiesInState(ConfirmingNormalDistributionProperties properties, bool meanReadOnly, bool deviationReadOnly) + { PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); Assert.AreEqual(3, dynamicProperties.Count); @@ -72,15 +96,15 @@ PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, "Misc", "Verwachtingswaarde", - "De gemiddelde waarde van de normale verdeling."); + "De gemiddelde waarde van de normale verdeling.", + meanReadOnly); PropertyDescriptor standardDeviationProperty = dynamicProperties[2]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(standardDeviationProperty, "Misc", "Standaardafwijking", - "De standaardafwijking van de normale verdeling."); - - mockRepository.VerifyAll(); + "De standaardafwijking van de normale verdeling.", + deviationReadOnly); } } } \ No newline at end of file Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBaseTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBaseTest.cs (.../ConfirmingVariationCoefficientDistributionPropertiesBaseTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientDistributionPropertiesBaseTest.cs (.../ConfirmingVariationCoefficientDistributionPropertiesBaseTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -37,6 +37,25 @@ public class ConfirmingVariationCoefficientDistributionPropertiesBaseTest { [Test] + public void Constructor_WithData_ReadOnlyProperties() + { + // Setup + var mocks = new MockRepository(); + var distribution = mocks.Stub(); + mocks.ReplayAll(); + + // Call + var properties = new SimpleDistributionProperties(distribution); + + // Assert + Assert.AreSame(distribution, properties.Data); + + AssertPropertiesInState(properties, true, true); + + mocks.VerifyAll(); + } + + [Test] public void Constructor_ReadOnlyWithData_ExpectedValues() { // Setup @@ -107,29 +126,7 @@ var properties = new SimpleDistributionProperties(propertiesReadOnly, distribution, handler); // Assert - PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); - Assert.AreEqual(3, dynamicProperties.Count); - - PropertyDescriptor distributionTypeProperty = dynamicProperties[0]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(distributionTypeProperty, - "Misc", - "Type verdeling", - "Het soort kansverdeling waarin deze parameter gedefinieerd wordt.", - true); - - PropertyDescriptor meanProperty = dynamicProperties[1]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, - "Misc", - "Verwachtingswaarde", - "", - expectMeanReadOnly); - - PropertyDescriptor coefficientOfVariationProperty = dynamicProperties[2]; - PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(coefficientOfVariationProperty, - "Misc", - "Variatiecoëfficiënt", - "", - expectCoefficientOfVariationReadOnly); + AssertPropertiesInState(properties, expectMeanReadOnly, expectCoefficientOfVariationReadOnly); mocks.VerifyAll(); } @@ -181,8 +178,8 @@ Assert.AreEqual(distribution.Mean, properties.Mean); Assert.AreEqual(distribution.CoefficientOfVariation, properties.CoefficientOfVariation); string expectedToString = string.Format("{0} ({1} = {2})", - distribution.Mean, - Resources.Distribution_VariationCoefficient_DisplayName, + distribution.Mean, + Resources.Distribution_VariationCoefficient_DisplayName, distribution.CoefficientOfVariation); Assert.AreEqual(expectedToString, properties.ToString()); mocks.VerifyAll(); @@ -224,9 +221,9 @@ var newMeanValue = new RoundedDouble(3, 20); var handler = new CalculationInputSetPropertyValueAfterConfirmationParameterTester(new[] - { - observerableMock - }); + { + observerableMock + }); var properties = new SimpleDistributionProperties( VariationCoefficientDistributionPropertiesReadOnly.None, @@ -276,9 +273,9 @@ var newCoefficientOfVariation = new RoundedDouble(3, 20); var handler = new CalculationInputSetPropertyValueAfterConfirmationParameterTester(new[] - { - observerableMock - }); + { + observerableMock + }); var properties = new SimpleDistributionProperties(VariationCoefficientDistributionPropertiesReadOnly.None, distribution, handler) { @@ -293,10 +290,41 @@ mocks.VerifyAll(); } + private static void AssertPropertiesInState(SimpleDistributionProperties properties, bool meanReadOnly, bool variationCoefficientReadOnly) + { + Assert.IsInstanceOf>(properties); + + PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); + Assert.AreEqual(3, dynamicProperties.Count); + + PropertyDescriptor distributionTypeProperty = dynamicProperties[0]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(distributionTypeProperty, + "Misc", + "Type verdeling", + "Het soort kansverdeling waarin deze parameter gedefinieerd wordt.", + true); + + PropertyDescriptor meanProperty = dynamicProperties[1]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, + "Misc", + "Verwachtingswaarde", + "", + meanReadOnly); + + PropertyDescriptor coefficientOfVariationProperty = dynamicProperties[2]; + PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(coefficientOfVariationProperty, + "Misc", + "Variatiecoëfficiënt", + "", + variationCoefficientReadOnly); + } + private class SimpleDistributionProperties : ConfirmingVariationCoefficientDistributionPropertiesBase { + public SimpleDistributionProperties(IVariationCoefficientDistribution distribution) : base(distribution) {} + public SimpleDistributionProperties(VariationCoefficientDistributionPropertiesReadOnly propertiesReadOnly, - IVariationCoefficientDistribution distribution, + IVariationCoefficientDistribution distribution, IObservablePropertyChangeHandler handler) : base(propertiesReadOnly, distribution, handler) {} Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionPropertiesTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionPropertiesTest.cs (.../ConfirmingVariationCoefficientLogNormalDistributionPropertiesTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientLogNormalDistributionPropertiesTest.cs (.../ConfirmingVariationCoefficientLogNormalDistributionPropertiesTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -40,6 +40,22 @@ } [Test] + public void Constructor_WithData_ReadOnlyProperties() + { + // Setup + var distribution = new VariationCoefficientLogNormalDistribution(); + + // Call + var properties = new ConfirmingVariationCoefficientLogNormalDistributionProperties(distribution); + + // Assert + Assert.IsInstanceOf>(properties); + Assert.AreSame(distribution, properties.Data); + + AssertPropertiesInState(properties, true, true); + } + + [Test] public void Constructor_WithParameters_ExpectedValues() { // Setup @@ -56,6 +72,15 @@ // Assert Assert.IsInstanceOf>(properties); Assert.AreSame(distribution, properties.Data); + + AssertPropertiesInState(properties, false, false); + + mockRepository.VerifyAll(); + } + + private static void AssertPropertiesInState(ConfirmingVariationCoefficientLogNormalDistributionProperties properties, bool meanReadOnly, bool variationCoefficientReadOnly) + { + Assert.IsInstanceOf>(properties); Assert.AreEqual("Lognormaal", properties.DistributionType); PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); @@ -72,15 +97,16 @@ PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, "Misc", "Verwachtingswaarde", - "De gemiddelde waarde van de lognormale verdeling."); + "De gemiddelde waarde van de lognormale verdeling.", + meanReadOnly); PropertyDescriptor variationCoefficientProperty = dynamicProperties[2]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(variationCoefficientProperty, "Misc", "Variatiecoëfficiënt", - "De variatiecoëfficiënt van de lognormale verdeling."); + "De variatiecoëfficiënt van de lognormale verdeling.", + variationCoefficientReadOnly); - mockRepository.VerifyAll(); } } } \ No newline at end of file Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionPropertiesTest.cs =================================================================== diff -u -r27398d86e91cb6f81984537f21deddc9c78d580d -r025664b7204e3dfc08b79d9153f51478f09ff0b6 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionPropertiesTest.cs (.../ConfirmingVariationCoefficientNormalDistributionPropertiesTest.cs) (revision 27398d86e91cb6f81984537f21deddc9c78d580d) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PropertyClasses/ConfirmingVariationCoefficientNormalDistributionPropertiesTest.cs (.../ConfirmingVariationCoefficientNormalDistributionPropertiesTest.cs) (revision 025664b7204e3dfc08b79d9153f51478f09ff0b6) @@ -40,6 +40,22 @@ } [Test] + public void Constructor_WithData_ReadOnlyProperties() + { + // Setup + var distribution = new VariationCoefficientNormalDistribution(); + + // Call + var properties = new ConfirmingVariationCoefficientNormalDistributionProperties(distribution); + + // Assert + Assert.IsInstanceOf>(properties); + Assert.AreSame(distribution, properties.Data); + + AssertPropertiesInState(properties, true, true); + } + + [Test] public void Constructor_WithParameters_ExpectedValues() { // Setup @@ -57,7 +73,12 @@ Assert.IsInstanceOf>(properties); Assert.AreSame(distribution, properties.Data); Assert.AreEqual("Normaal", properties.DistributionType); + AssertPropertiesInState(properties, false, false); + mockRepository.VerifyAll(); + } + private static void AssertPropertiesInState(ConfirmingVariationCoefficientNormalDistributionProperties properties, bool meanReadOnly, bool variationCoefficientReadOnly) + { PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); Assert.AreEqual(3, dynamicProperties.Count); @@ -72,15 +93,16 @@ PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(meanProperty, "Misc", "Verwachtingswaarde", - "De gemiddelde waarde van de normale verdeling."); + "De gemiddelde waarde van de normale verdeling.", + meanReadOnly); PropertyDescriptor variationCoefficientProperty = dynamicProperties[2]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(variationCoefficientProperty, "Misc", "Variatiecoëfficiënt", - "De variatiecoëfficiënt van de normale verdeling."); + "De variatiecoëfficiënt van de normale verdeling.", + variationCoefficientReadOnly); - mockRepository.VerifyAll(); } } } \ No newline at end of file