Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs =================================================================== diff -u -r3946a0010baf30b501d9052a692b7ab541b83207 -rd2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs (.../MacroStabilityInwardsPreconsolidationStress.cs) (revision 3946a0010baf30b501d9052a692b7ab541b83207) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs (.../MacroStabilityInwardsPreconsolidationStress.cs) (revision d2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2) @@ -38,7 +38,7 @@ /// The location of the preconsolidation stress. /// The stress distribution belonging to the preconsolidation stress. /// Thrown when any parameter is null. - /// Thrown when any of the parameters are . + /// Thrown when parameters of are . public MacroStabilityInwardsPreconsolidationStress(Point2D location, VariationCoefficientLogNormalDistribution stressDistribution) { if (location == null) @@ -52,9 +52,6 @@ ValidateParameterNaN(location.X, Resources.MacroStabilityInwardsPreconsolidationStress_XCoordinate_ParameterName); ValidateParameterNaN(location.Y, Resources.MacroStabilityInwardsPreconsolidationStress_ZCoordinate_ParameterName); - ValidateParameterNaN(stressDistribution.Mean, Resources.MacroStabilityInwardsPreconsolidationStress_PreconsolidationStressMean_ParameterName); - ValidateParameterNaN(stressDistribution.CoefficientOfVariation, - Resources.MacroStabilityInwardsPreconsolidationStress_PreconsolidationStressCoefficientOfVariation_ParameterName); Location = location; Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs =================================================================== diff -u -r3946a0010baf30b501d9052a692b7ab541b83207 -rd2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs (.../MacroStabilityInwardsPreconsolidationStressTest.cs) (revision 3946a0010baf30b501d9052a692b7ab541b83207) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs (.../MacroStabilityInwardsPreconsolidationStressTest.cs) (revision d2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2) @@ -42,10 +42,10 @@ var distribution = new VariationCoefficientLogNormalDistribution { - Mean = (RoundedDouble)0.005, + Mean = (RoundedDouble) 0.005, CoefficientOfVariation = random.NextRoundedDouble() }; - + // Call TestDelegate call = () => new MacroStabilityInwardsPreconsolidationStress(null, distribution); @@ -97,25 +97,44 @@ } [Test] - [TestCaseSource(nameof(GetConstructorArgumentsNaN))] - public void Constructor_ArgumentsNaN_ThrowsArgumentException(double xCoordinate, - double zCoordinate, - double stressMean, - double stressCoefficientOfVariation, - string parameterName) + public void Constructor_DistributionArgumentsNaN_ReturnsExpectedValues() { // Setup - var location = new Point2D(xCoordinate, zCoordinate); - var stressDistribution = new VariationCoefficientLogNormalDistribution + var random = new Random(21); + + var location = new Point2D(random.NextDouble(), random.NextDouble()); + var distribution = new VariationCoefficientLogNormalDistribution { - Mean = (RoundedDouble) stressMean, - CoefficientOfVariation = (RoundedDouble) stressCoefficientOfVariation + Mean = RoundedDouble.NaN, + CoefficientOfVariation = RoundedDouble.NaN }; // Call - TestDelegate call = () => new MacroStabilityInwardsPreconsolidationStress(location, stressDistribution); + var stress = new MacroStabilityInwardsPreconsolidationStress(location, distribution); // Assert + Assert.AreEqual(location, stress.Location); + + DistributionAssert.AreEqual(new VariationCoefficientLogNormalDistribution(2) + { + Mean = RoundedDouble.NaN, + CoefficientOfVariation = RoundedDouble.NaN + }, stress.Stress); + } + + [Test] + [TestCaseSource(nameof(GetConstructorArgumentsNaN))] + public void Constructor_CoordinateArgumentsNaN_ThrowsArgumentException(double xCoordinate, + double zCoordinate, + string parameterName) + { + // Setup + var location = new Point2D(xCoordinate, zCoordinate); + + // Call + TestDelegate call = () => new MacroStabilityInwardsPreconsolidationStress(location, new VariationCoefficientLogNormalDistribution(2)); + + // Assert string expectedMessage = $"De waarde voor parameter '{parameterName}' voor de grensspanning moet een concreet getal zijn."; TestHelper.AssertThrowsArgumentExceptionAndTestMessage(call, expectedMessage); } @@ -350,13 +369,9 @@ double xCoordinate = random.NextDouble(); double zCoordinate = random.NextDouble(); - const double stressMean = 0.005; - double stressCoefficientOfVariation = random.NextDouble(); - yield return new TestCaseData(double.NaN, zCoordinate, stressMean, stressCoefficientOfVariation, "X-coördinaat").SetName("Invalid XCoordinate"); - yield return new TestCaseData(xCoordinate, double.NaN, stressMean, stressCoefficientOfVariation, "Z-coördinaat").SetName("Invalid ZCoordinate"); - yield return new TestCaseData(xCoordinate, zCoordinate, double.NaN, stressCoefficientOfVariation, "gemiddelde").SetName("Invalid Mean"); - yield return new TestCaseData(xCoordinate, zCoordinate, stressMean, double.NaN, "variatiecoëfficient").SetName("Invalid Coefficient of Variation"); + yield return new TestCaseData(double.NaN, zCoordinate, "X-coördinaat").SetName("Invalid XCoordinate"); + yield return new TestCaseData(xCoordinate, double.NaN, "Z-coördinaat").SetName("Invalid ZCoordinate"); } private class DerivedMacroStabilityInwardsPreconsolidationStress : MacroStabilityInwardsPreconsolidationStress Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs =================================================================== diff -u -r9f936b0b29f490a024df02345df182133b1c041a -rd2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs (.../MacroStabilityInwardsPreconsolidationStressTransformerTest.cs) (revision 9f936b0b29f490a024df02345df182133b1c041a) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs (.../MacroStabilityInwardsPreconsolidationStressTransformerTest.cs) (revision d2548d8c57adf0df3e06c5e7ceb3eb9086d84cb2) @@ -178,20 +178,6 @@ StressMean = preconsolidationStressMean, StressCoefficientOfVariation = preconsolidationStressCoefficientOfVariation }, "Z-coördinaat").SetName("ZCoordinate NaN"); - yield return new TestCaseData(new PreconsolidationStress - { - XCoordinate = xCoordinate, - ZCoordinate = zCoordinate, - StressMean = double.NaN, - StressCoefficientOfVariation = preconsolidationStressCoefficientOfVariation - }, "gemiddelde").SetName("Mean NaN"); - yield return new TestCaseData(new PreconsolidationStress - { - XCoordinate = xCoordinate, - ZCoordinate = zCoordinate, - StressMean = preconsolidationStressMean, - StressCoefficientOfVariation = double.NaN - }, "variatiecoëfficient").SetName("Coefficient of Variation NaN"); } } } \ No newline at end of file