Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs =================================================================== diff -u -r31f59cfc48a6839453e372572d03ecc6ae6f0d00 -r3946a0010baf30b501d9052a692b7ab541b83207 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs (.../MacroStabilityInwardsPreconsolidationStress.cs) (revision 31f59cfc48a6839453e372572d03ecc6ae6f0d00) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/SoilProfile/MacroStabilityInwardsPreconsolidationStress.cs (.../MacroStabilityInwardsPreconsolidationStress.cs) (revision 3946a0010baf30b501d9052a692b7ab541b83207) @@ -37,9 +37,19 @@ /// /// 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 . public MacroStabilityInwardsPreconsolidationStress(Point2D location, VariationCoefficientLogNormalDistribution stressDistribution) { + if (location == null) + { + throw new ArgumentNullException(nameof(location)); + } + if (stressDistribution == null) + { + throw new ArgumentNullException(nameof(stressDistribution)); + } + ValidateParameterNaN(location.X, Resources.MacroStabilityInwardsPreconsolidationStress_XCoordinate_ParameterName); ValidateParameterNaN(location.Y, Resources.MacroStabilityInwardsPreconsolidationStress_ZCoordinate_ParameterName); ValidateParameterNaN(stressDistribution.Mean, Resources.MacroStabilityInwardsPreconsolidationStress_PreconsolidationStressMean_ParameterName); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsSemiProbabilisticDesignVariableFactoryTest.cs =================================================================== diff -u -r31f59cfc48a6839453e372572d03ecc6ae6f0d00 -r3946a0010baf30b501d9052a692b7ab541b83207 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsSemiProbabilisticDesignVariableFactoryTest.cs (.../MacroStabilityInwardsSemiProbabilisticDesignVariableFactoryTest.cs) (revision 31f59cfc48a6839453e372572d03ecc6ae6f0d00) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsSemiProbabilisticDesignVariableFactoryTest.cs (.../MacroStabilityInwardsSemiProbabilisticDesignVariableFactoryTest.cs) (revision 3946a0010baf30b501d9052a692b7ab541b83207) @@ -201,7 +201,7 @@ var stressDistribution = new VariationCoefficientLogNormalDistribution { Mean = (RoundedDouble) 0.005, - CoefficientOfVariation = (RoundedDouble) random.NextDouble() + CoefficientOfVariation = (RoundedDouble) coefficientOfVariation }; var preconsolidationStress = new MacroStabilityInwardsPreconsolidationStress(location, stressDistribution); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs =================================================================== diff -u -r31f59cfc48a6839453e372572d03ecc6ae6f0d00 -r3946a0010baf30b501d9052a692b7ab541b83207 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs (.../MacroStabilityInwardsPreconsolidationStressTest.cs) (revision 31f59cfc48a6839453e372572d03ecc6ae6f0d00) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/SoilProfile/MacroStabilityInwardsPreconsolidationStressTest.cs (.../MacroStabilityInwardsPreconsolidationStressTest.cs) (revision 3946a0010baf30b501d9052a692b7ab541b83207) @@ -35,6 +35,42 @@ public class MacroStabilityInwardsPreconsolidationStressTest { [Test] + public void Constructor_LocationNull_ThrowsArgumentNullException() + { + // Setup + var random = new Random(21); + + var distribution = new VariationCoefficientLogNormalDistribution + { + Mean = (RoundedDouble)0.005, + CoefficientOfVariation = random.NextRoundedDouble() + }; + + // Call + TestDelegate call = () => new MacroStabilityInwardsPreconsolidationStress(null, distribution); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("location", exception.ParamName); + } + + [Test] + public void Constructor_StressDistributionNull_ThrowsArgumentNullException() + { + // Setup + var random = new Random(21); + + var location = new Point2D(random.NextDouble(), random.NextDouble()); + + // Call + TestDelegate call = () => new MacroStabilityInwardsPreconsolidationStress(location, null); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("stressDistribution", exception.ParamName); + } + + [Test] public void Constructor_ValidArguments_ReturnsExpectedValues() { // Setup