Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs =================================================================== diff -u -r0fa0d88d03cc6adb9d820c65c4c7a43e853ef5a3 -rc55a333c4b0d017ec75a2f8afb8d2f621361c668 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 0fa0d88d03cc6adb9d820c65c4c7a43e853ef5a3) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision c55a333c4b0d017ec75a2f8afb8d2f621361c668) @@ -1640,15 +1640,6 @@ } /// - /// Looks up a localized string similar to Parameter '{0}' is niet lognormaal verdeeld.. - /// - public static string SoilLayer_Stochastic_parameter_0_has_no_lognormal_distribution { - get { - return ResourceManager.GetString("SoilLayer_Stochastic_parameter_0_has_no_lognormal_distribution", resourceCulture); - } - } - - /// /// Looks up a localized string similar to Parameter '{0}' is niet verschoven lognormaal verdeeld.. /// public static string SoilLayer_Stochastic_parameter_0_has_no_shifted_lognormal_distribution { @@ -1794,6 +1785,15 @@ } /// + /// Looks up a localized string similar to Parameter '{0}' is niet lognormaal verdeeld.. + /// + public static string Stochastic_parameter_0_has_no_lognormal_distribution { + get { + return ResourceManager.GetString("Stochastic_parameter_0_has_no_lognormal_distribution", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Kon geen stochastische ondergrondmodellen verkrijgen uit de database.. /// public static string StochasticSoilModelDatabaseReader_Failed_to_read_database { Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx =================================================================== diff -u -r0fa0d88d03cc6adb9d820c65c4c7a43e853ef5a3 -rc55a333c4b0d017ec75a2f8afb8d2f621361c668 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 0fa0d88d03cc6adb9d820c65c4c7a43e853ef5a3) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision c55a333c4b0d017ec75a2f8afb8d2f621361c668) @@ -883,7 +883,7 @@ {0} Deze ondergrondschematisatie wordt overgeslagen. - + Parameter '{0}' is niet lognormaal verdeeld. Index: Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/DistributionHelper.cs =================================================================== diff -u -r604dfe021f6161f8e5d107dd5821ba06390c5ecf -rc55a333c4b0d017ec75a2f8afb8d2f621361c668 --- Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/DistributionHelper.cs (.../DistributionHelper.cs) (revision 604dfe021f6161f8e5d107dd5821ba06390c5ecf) +++ Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/DistributionHelper.cs (.../DistributionHelper.cs) (revision c55a333c4b0d017ec75a2f8afb8d2f621361c668) @@ -54,7 +54,7 @@ || Math.Abs(shift) > tolerance)) { throw new ImportedDataTransformException(string.Format( - Resources.SoilLayer_Stochastic_parameter_0_has_no_lognormal_distribution, + Resources.Stochastic_parameter_0_has_no_lognormal_distribution, parameterName)); } } Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformer.cs =================================================================== diff -u -r3fe99efe7580ec1d9eb850908c001c990dc43fe5 -rc55a333c4b0d017ec75a2f8afb8d2f621361c668 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformer.cs (.../MacroStabilityInwardsPreconsolidationStressTransformer.cs) (revision 3fe99efe7580ec1d9eb850908c001c990dc43fe5) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformer.cs (.../MacroStabilityInwardsPreconsolidationStressTransformer.cs) (revision c55a333c4b0d017ec75a2f8afb8d2f621361c668) @@ -22,8 +22,9 @@ using System; using Ringtoets.Common.IO.Exceptions; using Ringtoets.Common.IO.SoilProfile; -using Ringtoets.MacroStabilityInwards.Primitives; using Ringtoets.MacroStabilityInwards.IO.Properties; +using Ringtoets.MacroStabilityInwards.Primitives; +using RingtoetsCommonIOResources = Ringtoets.Common.IO.Properties.Resources; namespace Ringtoets.MacroStabilityInwards.IO.SoilProfiles { @@ -64,6 +65,12 @@ preconsolidationStress.PreconsolidationStressMean, preconsolidationStress.PreconsolidationStressCoefficientOfVariation); } + catch (ArgumentOutOfRangeException e) + { + string errorMessage = string.Format(RingtoetsCommonIOResources.Stochastic_parameter_0_has_no_lognormal_distribution, + Resources.PreconsolidationStress_DisplayName); + throw new ImportedDataTransformException(errorMessage, e); + } catch (ArgumentException e) { throw new ImportedDataTransformException(e.Message, e); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs =================================================================== diff -u -reae3622163e0c8bdfc32f73eda6f5bd8d3b02484 -rc55a333c4b0d017ec75a2f8afb8d2f621361c668 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs (.../MacroStabilityInwardsPreconsolidationStressTransformerTest.cs) (revision eae3622163e0c8bdfc32f73eda6f5bd8d3b02484) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/SoilProfiles/MacroStabilityInwardsPreconsolidationStressTransformerTest.cs (.../MacroStabilityInwardsPreconsolidationStressTransformerTest.cs) (revision c55a333c4b0d017ec75a2f8afb8d2f621361c668) @@ -77,8 +77,8 @@ } [Test] - [TestCaseSource(nameof(GetInvalidPreconsolidationStress))] - public void Transform_InvalidPreconsolidationStressValues_ThrowsImportedDataTransformException( + [TestCaseSource(nameof(GetPreconsolidationStressCombinationWithNaNValues))] + public void Transform_PreconsolidationStressValuesNaN_ThrowsImportedDataTransformException( PreconsolidationStress preconsolidationStress, string parameterName) { @@ -93,6 +93,19 @@ } [Test] + [TestCaseSource(nameof(GetPreconsolidationStressInvalidDistributionValues))] + public void Transform_InvalidPreconsolidationStressDistributionValues_ThrowsImportedDataTransformException(PreconsolidationStress preconsolidationStress) + { + // Call + TestDelegate call = () => MacroStabilityInwardsPreconsolidationStressTransformer.Transform(preconsolidationStress); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("Parameter 'Grensspanning' is niet lognormaal verdeeld.", exception.Message); + Assert.IsInstanceOf(exception.InnerException); + } + + [Test] [TestCaseSource(nameof(GetInvalidStochastConfiguration))] public void Transform_InvalidStochasticDistributionProperties_ThrowsImportedDataTransformException( PreconsolidationStress preconsolidationStress) @@ -122,9 +135,30 @@ }).SetName("Invalid Shift"); } - private static IEnumerable GetInvalidPreconsolidationStress() + private static IEnumerable GetPreconsolidationStressInvalidDistributionValues() { var random = new Random(21); + double preconsolidationStressMean = random.NextDouble(); + + yield return new TestCaseData(new PreconsolidationStress + { + XCoordinate = random.NextDouble(), + ZCoordinate = random.NextDouble(), + PreconsolidationStressMean = -1, + PreconsolidationStressCoefficientOfVariation = random.NextDouble() + }).SetName("Invalid Mean"); + yield return new TestCaseData(new PreconsolidationStress + { + XCoordinate = random.NextDouble(), + ZCoordinate = random.NextDouble(), + PreconsolidationStressMean = preconsolidationStressMean, + PreconsolidationStressCoefficientOfVariation = -1 + }).SetName("Invalid Coefficient of Variation"); + } + + private static IEnumerable GetPreconsolidationStressCombinationWithNaNValues() + { + var random = new Random(21); double xCoordinate = random.NextDouble(); double zCoordinate = random.NextDouble(); double preconsolidationStressMean = random.NextDouble();