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