Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs =================================================================== diff -u -r376859993eadc6d75eea3e97d624b83a24e922b6 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs) (revision 376859993eadc6d75eea3e97d624b83a24e922b6) +++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -33,7 +33,6 @@ using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Data.TestUtil; -using Ringtoets.Common.Service; using Ringtoets.Common.Service.TestUtil; using Ringtoets.GrassCoverErosionOutwards.Data; using Ringtoets.GrassCoverErosionOutwards.Data.TestUtil; @@ -66,7 +65,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -114,7 +113,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -153,6 +152,53 @@ } [Test] + public void Run_InvalidNorm_DoesNotPerformCalculationAndLogsError() + { + // Setup + AssessmentSectionStub assessmentSection = CreateAssessmentSection(); + var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); + GrassCoverErosionOutwardsHydraulicBoundaryLocationsTestHelper.SetHydraulicBoundaryLocations( + failureMechanism, + assessmentSection, new[] + { + new TestHydraulicBoundaryLocation() + }); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); + + GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); + + assessmentSection.FailureMechanismContribution.LowerLimitNorm = 0.1; + + var mockRepository = new MockRepository(); + var calculatorFactory = mockRepository.StrictMock(); + mockRepository.ReplayAll(); + + var activity = new GrassCoverErosionOutwardsWaveConditionsCalculationActivity(calculation, + validFilePath, + failureMechanism, + assessmentSection); + + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) + { + // Call + Action call = () => activity.Run(); + + // Assert + TestHelper.AssertLogMessages(call, messages => + { + string[] msgs = messages.ToArray(); + Assert.AreEqual(4, msgs.Length); + Assert.AreEqual($"Golfcondities berekenen voor '{calculation.Name}' is gestart.", msgs[0]); + CalculationServiceTestHelper.AssertValidationStartMessage(msgs[1]); + mockRepository.VerifyAll(); + Assert.AreEqual("Doelkans is te groot om een berekening uit te kunnen voeren.", msgs[2]); + CalculationServiceTestHelper.AssertValidationEndMessage(msgs[3]); + }); + Assert.AreEqual(ActivityState.Failed, activity.State); + } + } + + [Test] public void Run_Always_SetProgressTexts() { // Setup @@ -164,7 +210,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -218,7 +264,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -256,16 +302,11 @@ { GeneralGrassCoverErosionOutwardsInput generalInput = failureMechanism.GeneralInput; - double mechanismSpecificNorm = RingtoetsCommonDataCalculationService.ProfileSpecificRequiredProbability( - assessmentSection.FailureMechanismContribution.Norm, - failureMechanism.Contribution, - failureMechanism.GeneralInput.N); - WaveConditionsInput input = calculation.InputParameters; var expectedInput = new WaveConditionsCosineCalculationInput(1, input.Orientation, input.HydraulicBoundaryLocation.Id, - mechanismSpecificNorm, + assessmentSection.FailureMechanismContribution.LowerLimitNorm * 30, input.ForeshoreProfile.Geometry.Select(c => new HydraRingForelandPoint(c.X, c.Y)), new HydraRingBreakWater(BreakWaterTypeHelper.GetHydraRingBreakWaterType(breakWaterType), input.BreakWater.Height), waterLevels.ElementAt(waterLevelIndex++), @@ -292,7 +333,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -353,7 +394,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -402,7 +443,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -450,7 +491,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -499,7 +540,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -548,7 +589,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -588,7 +629,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -632,7 +673,7 @@ { new TestHydraulicBoundaryLocation() }); - ConfigureFailureMechanismWithHydraulicBoundaryOutput(failureMechanism); + ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); @@ -664,9 +705,9 @@ mockRepository.VerifyAll(); } - private static void ConfigureFailureMechanismWithHydraulicBoundaryOutput(GrassCoverErosionOutwardsFailureMechanism failureMechanism) + private static void ConfigureAssessmentSectionWithHydraulicBoundaryOutput(IAssessmentSection assessmentSection) { - failureMechanism.WaterLevelCalculationsForMechanismSpecificLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); + assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); } private static GrassCoverErosionOutwardsWaveConditionsCalculation CreateValidCalculation(HydraulicBoundaryLocation location) @@ -676,7 +717,7 @@ InputParameters = { HydraulicBoundaryLocation = location, - CategoryType = FailureMechanismCategoryType.MechanismSpecificLowerLimitNorm, + CategoryType = FailureMechanismCategoryType.FactorizedLowerLimitNorm, ForeshoreProfile = new TestForeshoreProfile(true), UseForeshore = true, UseBreakWater = true, Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest.cs =================================================================== diff -u -rbe670ca6ad110cd393572f68c8b55621fbd30259 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest.cs) (revision be670ca6ad110cd393572f68c8b55621fbd30259) +++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -51,7 +51,7 @@ [TestFixture] public class GrassCoverErosionOutwardsWaveConditionsCalculationServiceTest { - private const double validTargetProbability = 0.005; + private const double validNorm = 0.005; private static readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Integration.Service, "HydraRingCalculation"); private static readonly string validFilePath = Path.Combine(testDataPath, "HRD dutch coast south.sqlite"); private static readonly string validPreprocessorDirectory = TestHelper.GetScratchPadPath(); @@ -74,7 +74,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert var exception = Assert.Throws(test); @@ -101,7 +101,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -138,7 +138,7 @@ GetValidAssessmentLevel(), invalidFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -175,7 +175,7 @@ GetValidAssessmentLevel(), validFilePath, invalidPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -212,7 +212,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -249,7 +249,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -285,7 +285,7 @@ RoundedDouble.NaN, validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -325,7 +325,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -367,7 +367,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Integration.Test/StabilityStoneCoverWaveConditionsCalculationActivityIntegrationTest.cs =================================================================== diff -u -r763fc1c50bfc324b5bc5e5808649beaf2f382ee2 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Integration.Test/StabilityStoneCoverWaveConditionsCalculationActivityIntegrationTest.cs (.../StabilityStoneCoverWaveConditionsCalculationActivityIntegrationTest.cs) (revision 763fc1c50bfc324b5bc5e5808649beaf2f382ee2) +++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Integration.Test/StabilityStoneCoverWaveConditionsCalculationActivityIntegrationTest.cs (.../StabilityStoneCoverWaveConditionsCalculationActivityIntegrationTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -136,6 +136,48 @@ } [Test] + public void Run_InvalidNorm_DoesNotPerformCalculationAndLogsError() + { + // Setup + IAssessmentSection assessmentSection = CreateAssessmentSectionWithHydraulicBoundaryOutput(); + StabilityStoneCoverWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); + + assessmentSection.FailureMechanismContribution.LowerLimitNorm = 0.1; + + var stabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); + + var activity = new StabilityStoneCoverWaveConditionsCalculationActivity(calculation, + validFilePath, + stabilityStoneCoverFailureMechanism, + assessmentSection); + + var mockRepository = new MockRepository(); + var calculatorFactory = mockRepository.StrictMock(); + mockRepository.ReplayAll(); + + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) + { + // Call + Action call = () => activity.Run(); + + // Assert + TestHelper.AssertLogMessages(call, messages => + { + string[] msgs = messages.ToArray(); + Assert.AreEqual(4, msgs.Length); + Assert.AreEqual($"Golfcondities voor blokken en zuilen berekenen voor '{calculation.Name}' is gestart.", msgs[0]); + CalculationServiceTestHelper.AssertValidationStartMessage(msgs[1]); + Assert.AreEqual("Doelkans is te groot om een berekening uit te kunnen voeren.", msgs[2]); + CalculationServiceTestHelper.AssertValidationEndMessage(msgs[3]); + }); + Assert.AreEqual(ActivityState.Failed, activity.State); + } + + mockRepository.VerifyAll(); + } + + + [Test] public void Run_Always_SetProgressTexts() { // Setup @@ -223,14 +265,15 @@ WaveConditionsInput input = calculation.InputParameters; RoundedDouble[] waterLevels = GetWaterLevels(calculation, assessmentSection).ToArray(); + double norm = assessmentSection.FailureMechanismContribution.LowerLimitNorm * 30; var waterLevelIndex = 0; for (var i = 0; i < testWaveConditionsInputs.Length / 2; i++) { var expectedInput = new WaveConditionsCosineCalculationInput(1, input.Orientation, input.HydraulicBoundaryLocation.Id, - assessmentSection.FailureMechanismContribution.Norm, + norm, input.ForeshoreProfile.Geometry.Select(c => new HydraRingForelandPoint(c.X, c.Y)), new HydraRingBreakWater(BreakWaterTypeHelper.GetHydraRingBreakWaterType(breakWaterType), input.BreakWater.Height), waterLevels[waterLevelIndex++], @@ -247,7 +290,7 @@ var expectedInput = new WaveConditionsCosineCalculationInput(1, input.Orientation, input.HydraulicBoundaryLocation.Id, - assessmentSection.FailureMechanismContribution.Norm, + norm, input.ForeshoreProfile.Geometry.Select(c => new HydraRingForelandPoint(c.X, c.Y)), new HydraRingBreakWater(BreakWaterTypeHelper.GetHydraRingBreakWaterType(breakWaterType), input.BreakWater.Height), waterLevels[waterLevelIndex++], @@ -660,7 +703,7 @@ InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation, - CategoryType = AssessmentSectionCategoryType.LowerLimitNorm, + CategoryType = AssessmentSectionCategoryType.FactorizedLowerLimitNorm, ForeshoreProfile = new TestForeshoreProfile(true), UseForeshore = true, UseBreakWater = true, @@ -694,7 +737,7 @@ hydraulicBoundaryLocation }); - assessmentSection.WaterLevelCalculationsForLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); + assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); return assessmentSection; } Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverWaveConditionsCalculationServiceTest.cs =================================================================== diff -u -rb9bc80f092532ba74f554ee960161a06b4ddaf91 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverWaveConditionsCalculationServiceTest.cs (.../StabilityStoneCoverWaveConditionsCalculationServiceTest.cs) (revision b9bc80f092532ba74f554ee960161a06b4ddaf91) +++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverWaveConditionsCalculationServiceTest.cs (.../StabilityStoneCoverWaveConditionsCalculationServiceTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -48,7 +48,7 @@ [TestFixture] public class StabilityStoneCoverWaveConditionsCalculationServiceTest { - private const double validTargetProbability = 0.005; + private const double validNorm = 0.005; private static readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Integration.Service, "HydraRingCalculation"); private static readonly string validFilePath = Path.Combine(testDataPath, "HRD dutch coast south.sqlite"); private static readonly string validPreprocessorDirectory = TestHelper.GetScratchPadPath(); @@ -71,7 +71,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert var exception = Assert.Throws(test); @@ -98,7 +98,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -135,7 +135,7 @@ GetValidAssessmentLevel(), invalidFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -172,7 +172,7 @@ GetValidAssessmentLevel(), validFilePath, invalidPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -209,7 +209,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -245,7 +245,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -281,7 +281,7 @@ RoundedDouble.NaN, validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -321,7 +321,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -363,7 +363,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Integration.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityIntegrationTest.cs =================================================================== diff -u -r2b7b943e6814a6b2f8a34c667c32196461165db6 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Integration.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityIntegrationTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivityIntegrationTest.cs) (revision 2b7b943e6814a6b2f8a34c667c32196461165db6) +++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Integration.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityIntegrationTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivityIntegrationTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -136,6 +136,47 @@ } [Test] + public void Run_InvalidNorm_DoesNotPerformCalculationAndLogsError() + { + // Setup + IAssessmentSection assessmentSection = CreateAssessmentSectionWithHydraulicBoundaryOutput(); + WaveImpactAsphaltCoverWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryDatabase.Locations.First()); + + assessmentSection.FailureMechanismContribution.LowerLimitNorm = 0.1; + + var waveImpactAsphaltCoverFailureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); + + var activity = new WaveImpactAsphaltCoverWaveConditionsCalculationActivity(calculation, + validFilePath, + waveImpactAsphaltCoverFailureMechanism, + assessmentSection); + + var mockRepository = new MockRepository(); + var calculatorFactory = mockRepository.StrictMock(); + mockRepository.ReplayAll(); + + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) + { + // Call + Action call = () => activity.Run(); + + // Assert + TestHelper.AssertLogMessages(call, messages => + { + string[] msgs = messages.ToArray(); + Assert.AreEqual(4, msgs.Length); + Assert.AreEqual($"Golfcondities berekenen voor '{calculation.Name}' is gestart.", msgs[0]); + CalculationServiceTestHelper.AssertValidationStartMessage(msgs[1]); + Assert.AreEqual("Doelkans is te groot om een berekening uit te kunnen voeren.", msgs[2]); + CalculationServiceTestHelper.AssertValidationEndMessage(msgs[3]); + }); + Assert.AreEqual(ActivityState.Failed, activity.State); + } + + mockRepository.VerifyAll(); + } + + [Test] public void Run_Always_SetProgressTexts() { // Setup @@ -228,7 +269,7 @@ var expectedInput = new WaveConditionsCosineCalculationInput(1, input.Orientation, input.HydraulicBoundaryLocation.Id, - assessmentSection.FailureMechanismContribution.Norm, + assessmentSection.FailureMechanismContribution.LowerLimitNorm * 30, input.ForeshoreProfile.Geometry.Select(c => new HydraRingForelandPoint(c.X, c.Y)), new HydraRingBreakWater(BreakWaterTypeHelper.GetHydraRingBreakWaterType(breakWaterType), input.BreakWater.Height), waterLevels.ElementAt(waterLevelIndex++), @@ -498,7 +539,7 @@ InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation, - CategoryType = AssessmentSectionCategoryType.LowerLimitNorm, + CategoryType = AssessmentSectionCategoryType.FactorizedLowerLimitNorm, ForeshoreProfile = new TestForeshoreProfile(true), UseForeshore = true, UseBreakWater = true, @@ -532,7 +573,7 @@ hydraulicBoundaryLocation }); - assessmentSection.WaterLevelCalculationsForLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); + assessmentSection.WaterLevelCalculationsForFactorizedLowerLimitNorm.First().Output = new TestHydraulicBoundaryLocationCalculationOutput(9.3); return assessmentSection; } Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs =================================================================== diff -u -ref4b3fac5923a625dc7d6d74238039d6c628c198 -r3370d752e150391d16ebfb96533921d777f4580c --- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs) (revision ef4b3fac5923a625dc7d6d74238039d6c628c198) +++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs) (revision 3370d752e150391d16ebfb96533921d777f4580c) @@ -48,7 +48,7 @@ [TestFixture] public class WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest { - private const double validTargetProbability = 0.005; + private const double validNorm = 0.005; private static readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Integration.Service, "HydraRingCalculation"); private static readonly string validFilePath = Path.Combine(testDataPath, "HRD dutch coast south.sqlite"); private static readonly string validPreprocessorDirectory = TestHelper.GetScratchPadPath(); @@ -71,7 +71,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert var exception = Assert.Throws(test); @@ -98,7 +98,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -135,7 +135,7 @@ GetValidAssessmentLevel(), invalidFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -172,7 +172,7 @@ GetValidAssessmentLevel(), validFilePath, invalidPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -209,7 +209,7 @@ GetValidAssessmentLevel(), testFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -245,7 +245,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -281,7 +281,7 @@ RoundedDouble.NaN, validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -321,7 +321,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages => @@ -363,7 +363,7 @@ GetValidAssessmentLevel(), validFilePath, validPreprocessorDirectory, - validTargetProbability); + validNorm); // Assert TestHelper.AssertLogMessages(call, messages =>