Index: Riskeer/Storage/test/Riskeer.Storage.Core.Test/Create/DuneErosion/DuneErosionFailureMechanismCreateExtensionsTest.cs =================================================================== diff -u -rcb44709200595ebe223867e21dc78d226ed1bdfa -r0671823d228c29864dbea59d98eb622363965cdc --- Riskeer/Storage/test/Riskeer.Storage.Core.Test/Create/DuneErosion/DuneErosionFailureMechanismCreateExtensionsTest.cs (.../DuneErosionFailureMechanismCreateExtensionsTest.cs) (revision cb44709200595ebe223867e21dc78d226ed1bdfa) +++ Riskeer/Storage/test/Riskeer.Storage.Core.Test/Create/DuneErosion/DuneErosionFailureMechanismCreateExtensionsTest.cs (.../DuneErosionFailureMechanismCreateExtensionsTest.cs) (revision 0671823d228c29864dbea59d98eb622363965cdc) @@ -235,6 +235,7 @@ DuneLocationCalculationForTargetProbabilityCollectionEntity entity) { Assert.AreEqual(expectedCalculations.TargetProbability, entity.TargetProbability); + Assert.AreEqual(expectedCalculations.DuneLocationCalculations.Count, entity.DuneLocationCalculationEntities.Count); } } } \ No newline at end of file Index: Riskeer/Storage/test/Riskeer.Storage.Core.Test/Read/FailureMechanismEntityReadExtensionsTest.cs =================================================================== diff -u -rcb44709200595ebe223867e21dc78d226ed1bdfa -r0671823d228c29864dbea59d98eb622363965cdc --- Riskeer/Storage/test/Riskeer.Storage.Core.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision cb44709200595ebe223867e21dc78d226ed1bdfa) +++ Riskeer/Storage/test/Riskeer.Storage.Core.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision 0671823d228c29864dbea59d98eb622363965cdc) @@ -278,7 +278,11 @@ entity.ReadAsDuneErosionFailureMechanism(failureMechanism, collector); // Assert - AssertDuneLocationCalculationsForTargetProbability(entity.DuneErosionFailureMechanismMetaEntities.Single().DuneLocationCalculationForTargetProbabilityCollectionEntities.OrderBy(e => e.Order), + IEnumerable sortedCollectionEntities = + entity.DuneErosionFailureMechanismMetaEntities.Single() + .DuneLocationCalculationForTargetProbabilityCollectionEntities + .OrderBy(e => e.Order); + AssertDuneLocationCalculationsForTargetProbability(sortedCollectionEntities, duneLocation, failureMechanism.DuneLocationCalculationsForUserDefinedTargetProbabilities); } @@ -341,7 +345,7 @@ var random = new Random(21); int nrOfCollections = random.Next(1, 10); - for (var i = nrOfCollections; i >= 0; i--) + for (int i = nrOfCollections; i >= 0; i--) { entity.DuneLocationCalculationForTargetProbabilityCollectionEntities.Add(CreateDuneLocationCalculationForTargetProbabilityCollectionEntity(duneLocationEntity, i)); } Index: Riskeer/Storage/test/Riskeer.Storage.Core.TestUtil/RiskeerProjectTestHelper.cs =================================================================== diff -u -r0d869c1376aff08f20d4e7e8eabee65ec0c901d5 -r0671823d228c29864dbea59d98eb622363965cdc --- Riskeer/Storage/test/Riskeer.Storage.Core.TestUtil/RiskeerProjectTestHelper.cs (.../RiskeerProjectTestHelper.cs) (revision 0d869c1376aff08f20d4e7e8eabee65ec0c901d5) +++ Riskeer/Storage/test/Riskeer.Storage.Core.TestUtil/RiskeerProjectTestHelper.cs (.../RiskeerProjectTestHelper.cs) (revision 0671823d228c29864dbea59d98eb622363965cdc) @@ -70,7 +70,8 @@ namespace Riskeer.Storage.Core.TestUtil { /// - /// This class can be used to create instances which have their properties set and can be used in tests. + /// This class can be used to create instances which have their properties set and can be used + /// in tests. /// public static class RiskeerProjectTestHelper { @@ -815,20 +816,31 @@ private static void SetDuneLocations(DuneErosionFailureMechanism failureMechanism) { - var location = new DuneLocation(12, "DuneLocation", new Point2D(790, 456), - new DuneLocation.ConstructionProperties()); - + var locationOne = new DuneLocation(12, "DuneLocation", new Point2D(790, 456), + new DuneLocation.ConstructionProperties()); + var locationTwo = new DuneLocation(13, "DuneLocation", new Point2D(791, 457), + new DuneLocation.ConstructionProperties()); failureMechanism.SetDuneLocations(new[] { - location + locationOne, + locationTwo }); + ConfigureDuneLocationCalculations(failureMechanism); } private static void ConfigureDuneLocationCalculations(DuneErosionFailureMechanism failureMechanism) { - SetCalculationOutput(failureMechanism.CalculationsForMechanismSpecificSignalingNorm.Single()); - SetCalculationOutput(failureMechanism.CalculationsForLowerLimitNorm.Single()); + var random = new Random(21); + IEnumerable calculations = failureMechanism.DuneLocationCalculationsForUserDefinedTargetProbabilities + .SelectMany(targetProbability => targetProbability.DuneLocationCalculations); + foreach (DuneLocationCalculation calculation in calculations) + { + if (random.NextBoolean()) + { + SetCalculationOutput(calculation); + } + } } private static void SetCalculationOutput(DuneLocationCalculation calculation) @@ -1200,11 +1212,11 @@ new Point3D(5.8, 6.0, -2.3), // Dike toe at river new Point3D(5.6, 6.0, 3.4), new Point3D(4.2, 6.0, 3.5), - new Point3D(4.0, 6.0, 0.5), // Dike toe at polder - new Point3D(3.8, 6.0, 0.5), // Ditch dike side - new Point3D(3.6, 6.0, 0.2), // Bottom ditch dike side + new Point3D(4.0, 6.0, 0.5), // Dike toe at polder + new Point3D(3.8, 6.0, 0.5), // Ditch dike side + new Point3D(3.6, 6.0, 0.2), // Bottom ditch dike side new Point3D(3.4, 6.0, 0.25), // Bottom ditch polder side - new Point3D(3.2, 6.0, 0.5), // Ditch polder side + new Point3D(3.2, 6.0, 0.5), // Ditch polder side new Point3D(3.0, 6.0, 0.5) }; surfaceLine.SetGeometry(geometryPoints); @@ -2015,7 +2027,7 @@ LowerBoundaryWaterLevels = (RoundedDouble) (-1.9), StepSize = WaveConditionsInputStepSize.One, CategoryType = FailureMechanismCategoryType.LowerLimitNorm, - CalculationType = GrassCoverErosionOutwardsWaveConditionsCalculationType.WaveRunUpAndWaveImpact, + CalculationType = GrassCoverErosionOutwardsWaveConditionsCalculationType.WaveRunUpAndWaveImpact, WaterLevelType = WaveConditionsInputWaterLevelType.Signaling }, Output = GrassCoverErosionOutwardsWaveConditionsOutputTestFactory.Create( @@ -2058,7 +2070,7 @@ #region StabilityStoneCover FailureMechanism - private static void ConfigureStabilityStoneCoverFailureMechanism(StabilityStoneCoverFailureMechanism failureMechanism, + private static void ConfigureStabilityStoneCoverFailureMechanism(StabilityStoneCoverFailureMechanism failureMechanism, IAssessmentSection assessmentSection) { failureMechanism.GeneralInput.N = (RoundedDouble) 15.0; @@ -2196,7 +2208,7 @@ #region WaveImpactAsphaltCover FailureMechanism - private static void ConfigureWaveImpactAsphaltCoverFailureMechanism(WaveImpactAsphaltCoverFailureMechanism failureMechanism, + private static void ConfigureWaveImpactAsphaltCoverFailureMechanism(WaveImpactAsphaltCoverFailureMechanism failureMechanism, IAssessmentSection assessmentSection) { failureMechanism.GeneralWaveImpactAsphaltCoverInput.DeltaL = (RoundedDouble) 1337.0;