Index: Riskeer/Integration/test/Riskeer.Integration.Forms.Test/PropertyClasses/NormPropertiesIntegrationTest.cs =================================================================== diff -u -r1e95e8af1da2b5ba6e1cb41c4ecef0a7d788e7d3 -rb3501173ad479cdddcd0b8a2dcc97826a1ff0edd --- Riskeer/Integration/test/Riskeer.Integration.Forms.Test/PropertyClasses/NormPropertiesIntegrationTest.cs (.../NormPropertiesIntegrationTest.cs) (revision 1e95e8af1da2b5ba6e1cb41c4ecef0a7d788e7d3) +++ Riskeer/Integration/test/Riskeer.Integration.Forms.Test/PropertyClasses/NormPropertiesIntegrationTest.cs (.../NormPropertiesIntegrationTest.cs) (revision b3501173ad479cdddcd0b8a2dcc97826a1ff0edd) @@ -72,6 +72,8 @@ } }; + SetUserDefinedTargetProbabilities(assessmentSection, hydraulicBoundaryLocation1); + assessmentSection.SetHydraulicBoundaryLocationCalculations(new[] { hydraulicBoundaryLocation1, @@ -162,6 +164,8 @@ } }; + SetUserDefinedTargetProbabilities(assessmentSection, hydraulicBoundaryLocation); + assessmentSection.SetHydraulicBoundaryLocationCalculations(new[] { hydraulicBoundaryLocation @@ -230,6 +234,25 @@ mockRepository.VerifyAll(); } + private static void SetUserDefinedTargetProbabilities(AssessmentSection assessmentSection, TestHydraulicBoundaryLocation hydraulicBoundaryLocation) + { + assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities.Add(new HydraulicBoundaryLocationCalculationsForTargetProbability + { + HydraulicBoundaryLocationCalculations = + { + new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) + } + }); + + assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities.Add(new HydraulicBoundaryLocationCalculationsForTargetProbability + { + HydraulicBoundaryLocationCalculations = + { + new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) + } + }); + } + private void SetPropertyAndVerifyNotificationsAndNoOutputSet(Action setPropertyAction) { // Setup @@ -293,54 +316,33 @@ HydraulicBoundaryLocation hydraulicBoundaryLocation, Random random) { - assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); assessmentSection.WaterLevelCalculationsForSignalingNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); assessmentSection.WaterLevelCalculationsForLowerLimitNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm + assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities + .First().HydraulicBoundaryLocationCalculations .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm + assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities + .First().HydraulicBoundaryLocationCalculations .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); + } private static void SetOutputToHydraulicBoundaryLocationCalculations(GrassCoverErosionOutwardsFailureMechanism failureMechanism, HydraulicBoundaryLocation hydraulicBoundaryLocation, Random random) { - failureMechanism.WaterLevelCalculationsForMechanismSpecificFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); failureMechanism.WaterLevelCalculationsForMechanismSpecificSignalingNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); failureMechanism.WaterLevelCalculationsForMechanismSpecificLowerLimitNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - failureMechanism.WaveHeightCalculationsForMechanismSpecificFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - failureMechanism.WaveHeightCalculationsForMechanismSpecificSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - failureMechanism.WaveHeightCalculationsForMechanismSpecificLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); } private static void AttachObserver(MockRepository mockRepository, @@ -349,11 +351,6 @@ bool expectUpdateObserver = true) { AttachObserver(mockRepository, - assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, assessmentSection.WaterLevelCalculationsForSignalingNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), expectUpdateObserver); @@ -362,31 +359,6 @@ assessmentSection.WaterLevelCalculationsForLowerLimitNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), expectUpdateObserver); - - AttachObserver(mockRepository, - assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - assessmentSection.WaveHeightCalculationsForSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - assessmentSection.WaveHeightCalculationsForLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); } private static void AttachObserver(MockRepository mockRepository, @@ -395,11 +367,6 @@ bool expectUpdateObserver = true) { AttachObserver(mockRepository, - failureMechanism.WaterLevelCalculationsForMechanismSpecificFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, failureMechanism.WaterLevelCalculationsForMechanismSpecificSignalingNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), expectUpdateObserver); @@ -408,21 +375,6 @@ failureMechanism.WaterLevelCalculationsForMechanismSpecificLowerLimitNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), expectUpdateObserver); - - AttachObserver(mockRepository, - failureMechanism.WaveHeightCalculationsForMechanismSpecificFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - failureMechanism.WaveHeightCalculationsForMechanismSpecificSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); - - AttachObserver(mockRepository, - failureMechanism.WaveHeightCalculationsForMechanismSpecificLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)), - expectUpdateObserver); } private static void AttachObserver(MockRepository mockRepository, @@ -443,30 +395,20 @@ HydraulicBoundaryLocation hydraulicBoundaryLocation, bool expectedHasOutput) { - Assert.AreEqual(expectedHasOutput, assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .HasOutput); Assert.AreEqual(expectedHasOutput, assessmentSection.WaterLevelCalculationsForSignalingNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .HasOutput); Assert.AreEqual(expectedHasOutput, assessmentSection.WaterLevelCalculationsForLowerLimitNorm .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .HasOutput); - Assert.AreEqual(expectedHasOutput, assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm + Assert.AreEqual(expectedHasOutput, assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities + .First().HydraulicBoundaryLocationCalculations .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .HasOutput); - Assert.AreEqual(expectedHasOutput, assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm + Assert.AreEqual(expectedHasOutput, assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities + .First().HydraulicBoundaryLocationCalculations .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) .HasOutput); - Assert.AreEqual(expectedHasOutput, assessmentSection.WaveHeightCalculationsForSignalingNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .HasOutput); - Assert.AreEqual(expectedHasOutput, assessmentSection.WaveHeightCalculationsForLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .HasOutput); - Assert.AreEqual(expectedHasOutput, assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm - .First(c => ReferenceEquals(c.HydraulicBoundaryLocation, hydraulicBoundaryLocation)) - .HasOutput); } private static void AssertNormValues(NormProperties properties, FailureMechanismContribution failureMechanismContribution) Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/FailureMechanismContributionNormChangeHandlerTest.cs =================================================================== diff -u -r10730fc44c5bfed055d24dc2e759d6ffe9670c42 -rb3501173ad479cdddcd0b8a2dcc97826a1ff0edd --- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/FailureMechanismContributionNormChangeHandlerTest.cs (.../FailureMechanismContributionNormChangeHandlerTest.cs) (revision 10730fc44c5bfed055d24dc2e759d6ffe9670c42) +++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/FailureMechanismContributionNormChangeHandlerTest.cs (.../FailureMechanismContributionNormChangeHandlerTest.cs) (revision b3501173ad479cdddcd0b8a2dcc97826a1ff0edd) @@ -29,6 +29,7 @@ using Rhino.Mocks; using Riskeer.Common.Data.AssessmentSection; using Riskeer.Common.Data.Calculation; +using Riskeer.Common.Data.Hydraulics; using Riskeer.Common.Forms.PropertyClasses; using Riskeer.DuneErosion.Data; using Riskeer.DuneErosion.Data.TestUtil; @@ -129,17 +130,14 @@ .Where(c => c.HasOutput) .ToArray(); + IEnumerable userDefinedCalculations = GetUserDefinedCalculations(assessmentSection); + IEnumerable expectedAffectedObjects = expectedAffectedCalculations.Cast() .Concat(assessmentSection.GetFailureMechanisms()) - .Concat(assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm) .Concat(assessmentSection.WaterLevelCalculationsForSignalingNorm) .Concat(assessmentSection.WaterLevelCalculationsForLowerLimitNorm) - .Concat(assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm) - .Concat(assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm) - .Concat(assessmentSection.WaveHeightCalculationsForSignalingNorm) - .Concat(assessmentSection.WaveHeightCalculationsForLowerLimitNorm) - .Concat(assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm) + .Concat(userDefinedCalculations) .Concat(GetAllAffectedDuneLocationCalculations(assessmentSection.DuneErosion)) .Concat(new IObservable[] { @@ -182,21 +180,18 @@ AssessmentSection assessmentSection = TestDataGenerator.GetAssessmentSectionWithAllCalculationConfigurationsWithoutCalculationOutput(); - IEnumerable expectedAffectedObjects = + IEnumerable userDefinedCalculations = GetUserDefinedCalculations(assessmentSection); + + List expectedAffectedObjects = assessmentSection.GetFailureMechanisms().Cast() - .Concat(assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm) .Concat(assessmentSection.WaterLevelCalculationsForSignalingNorm) .Concat(assessmentSection.WaterLevelCalculationsForLowerLimitNorm) - .Concat(assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm) - .Concat(assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm) - .Concat(assessmentSection.WaveHeightCalculationsForSignalingNorm) - .Concat(assessmentSection.WaveHeightCalculationsForLowerLimitNorm) - .Concat(assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm) + .Concat(userDefinedCalculations) .Concat(GetAllAffectedDuneLocationCalculations(assessmentSection.DuneErosion)) .Concat(new IObservable[] { assessmentSection.FailureMechanismContribution - }).ToArray(); + }).ToList(); var handler = new FailureMechanismContributionNormChangeHandler(assessmentSection); @@ -322,28 +317,39 @@ var expectedException = new Exception(); // Call - void Call() => handler.SetPropertyValueAfterConfirmation(() => { throw expectedException; }); + void Call() => handler.SetPropertyValueAfterConfirmation(() => throw expectedException); // Assert var exception = Assert.Throws(Call); Assert.AreSame(expectedException, exception); } + private static IEnumerable GetUserDefinedCalculations(IAssessmentSection assessmentSection) + { + var userDefinedCalculations = new List(); + + foreach (ObservableList element in assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities.Select(c => c.HydraulicBoundaryLocationCalculations)) + { + userDefinedCalculations.AddRange(element); + } + + foreach (ObservableList element in assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities.Select(c => c.HydraulicBoundaryLocationCalculations)) + { + userDefinedCalculations.AddRange(element); + } + + return userDefinedCalculations; + } + private static IEnumerable GetAllAffectedDuneLocationCalculations(DuneErosionFailureMechanism failureMechanism) { return DuneLocationsTestHelper.GetAllDuneLocationCalculationsWithOutput(failureMechanism); } private static void AssertHydraulicBoundaryLocationCalculationOutput(AssessmentSection assessmentSection, bool hasOutput) { - Assert.IsTrue(assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.All(c => c.HasOutput == hasOutput)); Assert.IsTrue(assessmentSection.WaterLevelCalculationsForSignalingNorm.All(c => c.HasOutput == hasOutput)); Assert.IsTrue(assessmentSection.WaterLevelCalculationsForLowerLimitNorm.All(c => c.HasOutput == hasOutput)); - Assert.IsTrue(assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm.All(c => c.HasOutput == hasOutput)); - Assert.IsTrue(assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm.All(c => c.HasOutput == hasOutput)); - Assert.IsTrue(assessmentSection.WaveHeightCalculationsForSignalingNorm.All(c => c.HasOutput == hasOutput)); - Assert.IsTrue(assessmentSection.WaveHeightCalculationsForLowerLimitNorm.All(c => c.HasOutput == hasOutput)); - Assert.IsTrue(assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm.All(c => c.HasOutput == hasOutput)); } } } \ No newline at end of file Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs =================================================================== diff -u -r958ec3ca6d7aac0a6b47f25208121e06281f15e6 -rb3501173ad479cdddcd0b8a2dcc97826a1ff0edd --- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision 958ec3ca6d7aac0a6b47f25208121e06281f15e6) +++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision b3501173ad479cdddcd0b8a2dcc97826a1ff0edd) @@ -250,15 +250,19 @@ { var calculations = new List(); - calculations.AddRange(assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm); calculations.AddRange(assessmentSection.WaterLevelCalculationsForSignalingNorm); calculations.AddRange(assessmentSection.WaterLevelCalculationsForLowerLimitNorm); - calculations.AddRange(assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm); - calculations.AddRange(assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm); - calculations.AddRange(assessmentSection.WaveHeightCalculationsForSignalingNorm); - calculations.AddRange(assessmentSection.WaveHeightCalculationsForLowerLimitNorm); - calculations.AddRange(assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm); + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities) + { + calculations.AddRange(element.HydraulicBoundaryLocationCalculations); + } + + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities) + { + calculations.AddRange(element.HydraulicBoundaryLocationCalculations); + } + return calculations; } Index: Riskeer/Integration/test/Riskeer.Integration.TestUtil/TestDataGenerator.cs =================================================================== diff -u -r958ec3ca6d7aac0a6b47f25208121e06281f15e6 -rb3501173ad479cdddcd0b8a2dcc97826a1ff0edd --- Riskeer/Integration/test/Riskeer.Integration.TestUtil/TestDataGenerator.cs (.../TestDataGenerator.cs) (revision 958ec3ca6d7aac0a6b47f25208121e06281f15e6) +++ Riskeer/Integration/test/Riskeer.Integration.TestUtil/TestDataGenerator.cs (.../TestDataGenerator.cs) (revision b3501173ad479cdddcd0b8a2dcc97826a1ff0edd) @@ -80,20 +80,33 @@ } }; + assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities.Add(new HydraulicBoundaryLocationCalculationsForTargetProbability + { + HydraulicBoundaryLocationCalculations = + { + new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) + } + }); + + assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities.Add(new HydraulicBoundaryLocationCalculationsForTargetProbability + { + HydraulicBoundaryLocationCalculations = + { + new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) + } + }); + assessmentSection.SetHydraulicBoundaryLocationCalculations(new[] { hydraulicBoundaryLocation }); - assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); assessmentSection.WaterLevelCalculationsForSignalingNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); assessmentSection.WaterLevelCalculationsForLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForFactorizedSignalingNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForSignalingNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); - assessmentSection.WaveHeightCalculationsForFactorizedLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); + assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities.First().HydraulicBoundaryLocationCalculations.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); + assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities.First().HydraulicBoundaryLocationCalculations.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(random.NextDouble()); + SetFullyConfiguredFailureMechanism(assessmentSection.ClosingStructures, hydraulicBoundaryLocation); SetFullyConfiguredFailureMechanism(assessmentSection.GrassCoverErosionInwards, hydraulicBoundaryLocation); MacroStabilityInwardsTestDataGenerator.ConfigureFailureMechanismWithAllCalculationConfigurations(assessmentSection.MacroStabilityInwards, hydraulicBoundaryLocation);