Index: Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationActivity.cs =================================================================== diff -u -r2a81f01756e227d5ce93717b21b87e8a5cd5fcbb -reac7f671d426fac073e5d154d020f56f45fa3669 --- Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationActivity.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivity.cs) (revision 2a81f01756e227d5ce93717b21b87e8a5cd5fcbb) +++ Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationActivity.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivity.cs) (revision eac7f671d426fac073e5d154d020f56f45fa3669) @@ -84,7 +84,7 @@ WaveImpactAsphaltCoverDataSynchronizationService.ClearWaveConditionsCalculationOutput(calculation); calculationService.Calculate( - calculation, assessmentSection, failureMechanism.GeneralInput, assessmentSection.HydraulicBoundaryDatabase.FilePath); + calculation, assessmentSection, failureMechanism.GeneralInput); } protected override void OnCancel() Index: Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationService.cs =================================================================== diff -u -r2a81f01756e227d5ce93717b21b87e8a5cd5fcbb -reac7f671d426fac073e5d154d020f56f45fa3669 --- Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationService.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationService.cs) (revision 2a81f01756e227d5ce93717b21b87e8a5cd5fcbb) +++ Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverWaveConditionsCalculationService.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationService.cs) (revision eac7f671d426fac073e5d154d020f56f45fa3669) @@ -25,7 +25,6 @@ using Core.Common.Base.Data; using Core.Common.Base.IO; using Ringtoets.Common.Data.AssessmentSection; -using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Service; using Ringtoets.HydraRing.Calculation.Exceptions; using Ringtoets.Revetment.Data; @@ -48,13 +47,12 @@ /// The that holds all the information required to perform the calculation. /// The that holds information about the norm used in the calculation. /// Calculation input parameters that apply to all instances. - /// The path of the HLCD file that should be used for performing the calculation. /// Thrown when , /// or is null. - /// Thrown when the contains invalid characters. + /// Thrown when the hydraulic boundary database file path contains invalid characters. /// Thrown when: /// - /// No settings database file could be found at the location of + /// No settings database file could be found at the location of hydraulic boundary database file path /// with the same name. /// Unable to open settings database file. /// Unable to read required data from database file. @@ -66,8 +64,7 @@ /// Thrown when an error occurs during the calculation. public void Calculate(WaveImpactAsphaltCoverWaveConditionsCalculation calculation, IAssessmentSection assessmentSection, - GeneralWaveConditionsInput generalWaveConditionsInput, - string hlcdFilePath) + GeneralWaveConditionsInput generalWaveConditionsInput) { if (calculation == null) { @@ -91,8 +88,6 @@ RoundedDouble c = generalWaveConditionsInput.C; double norm = assessmentSection.GetNorm(calculation.InputParameters.CategoryType); - string preprocessorDirectory = assessmentSection.HydraulicBoundaryDatabase.EffectivePreprocessorDirectory(); - RoundedDouble assessmentLevel = assessmentSection.GetAssessmentLevel(calculation.InputParameters.HydraulicBoundaryLocation, calculation.InputParameters.CategoryType); @@ -106,8 +101,7 @@ b, c, norm, - hlcdFilePath, - preprocessorDirectory); + assessmentSection.HydraulicBoundaryDatabase); if (!Canceled) { Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityFactoryTest.cs =================================================================== diff -u -rb6dc614ba3531e6b25df9e6ac377b60679b1ff26 -reac7f671d426fac073e5d154d020f56f45fa3669 --- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityFactoryTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivityFactoryTest.cs) (revision b6dc614ba3531e6b25df9e6ac377b60679b1ff26) +++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationActivityFactoryTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationActivityFactoryTest.cs) (revision eac7f671d426fac073e5d154d020f56f45fa3669) @@ -33,6 +33,7 @@ using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Data.TestUtil; using Ringtoets.Common.Service; +using Ringtoets.Common.Service.TestUtil; using Ringtoets.HydraRing.Calculation.Calculator.Factory; using Ringtoets.HydraRing.Calculation.Data.Input; using Ringtoets.HydraRing.Calculation.Data.Input.WaveConditions; @@ -105,8 +106,9 @@ CollectionAssert.AllItemsAreInstancesOfType(activities, typeof(WaveImpactAsphaltCoverWaveConditionsCalculationActivity)); Assert.AreEqual(2, activities.Count()); RoundedDouble assessmentLevel = assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.Single().Output.Result; - AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(0), calculation1, assessmentLevel); - AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(1), calculation2, assessmentLevel); + HydraulicBoundaryDatabase hydraulicBoundaryDatabase = assessmentSection.HydraulicBoundaryDatabase; + AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(0), calculation1, assessmentLevel, hydraulicBoundaryDatabase); + AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(1), calculation2, assessmentLevel, hydraulicBoundaryDatabase); } [Test] @@ -183,7 +185,8 @@ Assert.IsInstanceOf(activity); AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activity, calculation, - assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.Single().Output.Result); + assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.Single().Output.Result, + assessmentSection.HydraulicBoundaryDatabase); } [Test] @@ -267,8 +270,9 @@ Assert.AreEqual(2, activities.Count()); RoundedDouble assessmentLevel = assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm.Single().Output.Result; - AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.First(), calculation1, assessmentLevel); - AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(1), calculation2, assessmentLevel); + HydraulicBoundaryDatabase hydraulicBoundaryDatabase = assessmentSection.HydraulicBoundaryDatabase; + AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.First(), calculation1, assessmentLevel, hydraulicBoundaryDatabase); + AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(activities.ElementAt(1), calculation2, assessmentLevel, hydraulicBoundaryDatabase); } private static void SetHydraulicBoundaryLocationToAssessmentSection(AssessmentSectionStub assessmentSection, TestHydraulicBoundaryLocation hydraulicBoundaryLocation) @@ -326,7 +330,8 @@ private static void AssertWaveImpactAsphaltCoverWaveConditionsCalculationActivity(Activity activity, WaveImpactAsphaltCoverWaveConditionsCalculation calculation, - RoundedDouble assessmentLevel) + RoundedDouble assessmentLevel, + HydraulicBoundaryDatabase hydraulicBoundaryDatabase) { var mocks = new MockRepository(); var testCalculator = new TestWaveConditionsCosineCalculator(); @@ -336,9 +341,9 @@ calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) .WhenCalled(invocation => { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); + HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( + HydraulicBoundaryCalculationSettingsFactory.CreateSettings(hydraulicBoundaryDatabase), + (HydraRingCalculationSettings)invocation.Arguments[0]); }) .Return(testCalculator) .Repeat Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs =================================================================== diff -u -r631448b5dbf13f2c3c4e411729c9fba4e1e8cdcd -reac7f671d426fac073e5d154d020f56f45fa3669 --- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs) (revision 631448b5dbf13f2c3c4e411729c9fba4e1e8cdcd) +++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs (.../WaveImpactAsphaltCoverWaveConditionsCalculationServiceTest.cs) (revision eac7f671d426fac073e5d154d020f56f45fa3669) @@ -77,8 +77,7 @@ TestDelegate test = () => new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( null, assessmentSection, - failureMechanism.GeneralInput, - validFilePath); + failureMechanism.GeneralInput); // Assert var exception = Assert.Throws(test); @@ -97,8 +96,7 @@ TestDelegate test = () => new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, null, - failureMechanism.GeneralInput, - validFilePath); + failureMechanism.GeneralInput); // Assert var exception = Assert.Throws(test); @@ -119,8 +117,7 @@ TestDelegate test = () => new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - null, - validFilePath); + null); // Assert var exception = Assert.Throws(test); @@ -145,13 +142,8 @@ var mockRepository = new MockRepository(); var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); - }) + calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(null)) + .IgnoreArguments() .Return(new TestWaveConditionsCosineCalculator()) .Repeat .Twice(); @@ -163,8 +155,7 @@ Action call = () => new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert TestHelper.AssertLogMessages(call, messages => @@ -205,13 +196,8 @@ var mockRepository = new MockRepository(); var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); - }) + calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(null)) + .IgnoreArguments() .Return(new TestWaveConditionsCosineCalculator()) .Repeat .Twice(); @@ -238,8 +224,7 @@ Action call = () => new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert TestHelper.AssertLogMessages(call, messages => @@ -287,9 +272,9 @@ calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) .WhenCalled(invocation => { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); + HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( + HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryDatabase), + (HydraRingCalculationSettings) invocation.Arguments[0]); }) .Return(calculator) .Repeat @@ -302,8 +287,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert WaveConditionsCosineCalculationInput[] testWaveConditionsInputs = calculator.ReceivedInputs.ToArray(); @@ -355,8 +339,7 @@ waveImpactAsphaltCoverWaveConditionsCalculationService.Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert Assert.IsFalse(calculation.HasOutput); @@ -378,13 +361,8 @@ var mockRepository = new MockRepository(); var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); - }) + calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(null)) + .IgnoreArguments() .Return(calculator); mockRepository.ReplayAll(); @@ -397,8 +375,7 @@ waveImpactAsphaltCoverWaveConditionsCalculationService.Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert Assert.IsNull(calculation.Output); @@ -419,13 +396,8 @@ var mockRepository = new MockRepository(); var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); - }) + calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(null)) + .IgnoreArguments() .Return(new TestWaveConditionsCosineCalculator()) .Repeat .Times(3); @@ -437,8 +409,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); // Assert Assert.IsNotNull(calculation.Output); @@ -470,13 +441,8 @@ var mockRepository = new MockRepository(); var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); - }) + calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(null)) + .IgnoreArguments() .Return(calculatorThatFails) .Repeat .Times(3); @@ -497,8 +463,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - failureMechanism.GeneralInput, - validFilePath); + failureMechanism.GeneralInput); } catch (HydraRingCalculationException e) { @@ -587,8 +552,7 @@ // Call Action call = () => service.Calculate(calculation, assessmentSection, - failureMechanism.GeneralInput, - validFilePath); + failureMechanism.GeneralInput); // Assert RoundedDouble[] waterLevels = GetWaterLevels(calculation, assessmentSection).ToArray(); @@ -647,9 +611,9 @@ calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) .WhenCalled(invocation => { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); + HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( + HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryDatabase), + (HydraRingCalculationSettings) invocation.Arguments[0]); }) .Return(calculator) .Repeat @@ -662,8 +626,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); } // Assert @@ -690,9 +653,9 @@ calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) .WhenCalled(invocation => { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.AreEqual(validPreprocessorDirectory, settings.PreprocessorDirectory); + HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( + HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryDatabase), + (HydraRingCalculationSettings) invocation.Arguments[0]); }) .Return(calculator) .Repeat @@ -705,8 +668,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); } // Assert @@ -733,9 +695,9 @@ calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) .WhenCalled(invocation => { - var settings = (HydraRingCalculationSettings) invocation.Arguments[0]; - Assert.AreEqual(validFilePath, settings.HlcdFilePath); - Assert.IsEmpty(settings.PreprocessorDirectory); + HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( + HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryDatabase), + (HydraRingCalculationSettings) invocation.Arguments[0]); }) .Return(calculator) .Repeat @@ -748,8 +710,7 @@ new WaveImpactAsphaltCoverWaveConditionsCalculationService().Calculate( calculation, assessmentSection, - waveImpactAsphaltCoverFailureMechanism.GeneralInput, - validFilePath); + waveImpactAsphaltCoverFailureMechanism.GeneralInput); } // Assert