Index: Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs =================================================================== diff -u -r68fbd8dc20f9cf7449e4395c28e353b6d6968dbb -rcf1653dc687ef3005443ff7bdaa7badc080cb4a0 --- Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs) (revision 68fbd8dc20f9cf7449e4395c28e353b6d6968dbb) +++ Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Integration.Test/GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationActivityIntegrationTest.cs) (revision cf1653dc687ef3005443ff7bdaa7badc080cb4a0) @@ -51,7 +51,6 @@ { private static readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Riskeer.Integration.Service, "HydraRingCalculation"); private static readonly string validFilePath = Path.Combine(testDataPath, "HRD dutch coast south.sqlite"); - private static readonly string validPreprocessorDirectory = TestHelper.GetScratchPadPath(); [Test] public void Run_CalculationWithInvalidHrdFilePath_DoesNotPerformCalculationAndLogsError() @@ -462,10 +461,12 @@ } [Test] - public void Run_HydraulicBoundaryDatabaseWithCanUsePreprocessorFalse_CreateWaveConditionsCosineCalculatorAsExpected() + [TestCase(true)] + [TestCase(false)] + public void Run_HydraulicBoundaryDataSet_CreateWaveConditionsCosineCalculatorAsExpected(bool usePreprocessorClosure) { // Setup - AssessmentSectionStub assessmentSection = CreateAssessmentSection(); + AssessmentSectionStub assessmentSection = CreateAssessmentSection(usePreprocessorClosure); ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryData.Locations.First()); @@ -501,92 +502,6 @@ } [Test] - public void Run_HydraulicBoundaryDatabaseWithUsePreprocessorTrue_CreateWaveConditionsCosineCalculatorAsExpected() - { - // Setup - AssessmentSectionStub assessmentSection = CreateAssessmentSection(); - ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); - - GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryData.Locations.First()); - - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.CanUsePreprocessor = true; - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.UsePreprocessor = true; - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.PreprocessorDirectory = validPreprocessorDirectory; - - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - CalculatableActivity activity = GrassCoverErosionOutwardsCalculationActivityFactory.CreateWaveConditionsCalculationActivity(calculation, - failureMechanism, - assessmentSection); - int nrOfCalculators = GetNrOfCalculators(calculation, assessmentSection); - - var mockRepository = new MockRepository(); - var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( - HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryData), - (HydraRingCalculationSettings) invocation.Arguments[0]); - }) - .Return(new TestWaveConditionsCosineCalculator()) - .Repeat - .Times(nrOfCalculators); - mockRepository.ReplayAll(); - - using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) - { - // Call - activity.Run(); - } - - // Assert - mockRepository.VerifyAll(); - } - - [Test] - public void Run_HydraulicBoundaryDatabaseWithUsePreprocessorFalse_CreateWaveConditionsCosineCalculatorAsExpected() - { - // Setup - AssessmentSectionStub assessmentSection = CreateAssessmentSection(); - ConfigureAssessmentSectionWithHydraulicBoundaryOutput(assessmentSection); - - GrassCoverErosionOutwardsWaveConditionsCalculation calculation = CreateValidCalculation(assessmentSection.HydraulicBoundaryData.Locations.First()); - - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.CanUsePreprocessor = true; - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.UsePreprocessor = false; - assessmentSection.HydraulicBoundaryData.HydraulicLocationConfigurationSettings.PreprocessorDirectory = "InvalidPreprocessorDirectory"; - - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - CalculatableActivity activity = GrassCoverErosionOutwardsCalculationActivityFactory.CreateWaveConditionsCalculationActivity(calculation, - failureMechanism, - assessmentSection); - int nrOfCalculators = GetNrOfCalculators(calculation, assessmentSection); - - var mockRepository = new MockRepository(); - var calculatorFactory = mockRepository.StrictMock(); - calculatorFactory.Expect(cf => cf.CreateWaveConditionsCosineCalculator(Arg.Is.NotNull)) - .WhenCalled(invocation => - { - HydraRingCalculationSettingsTestHelper.AssertHydraRingCalculationSettings( - HydraulicBoundaryCalculationSettingsFactory.CreateSettings(assessmentSection.HydraulicBoundaryData), - (HydraRingCalculationSettings) invocation.Arguments[0]); - }) - .Return(new TestWaveConditionsCosineCalculator()) - .Repeat - .Times(nrOfCalculators); - mockRepository.ReplayAll(); - - using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) - { - // Call - activity.Run(); - } - - // Assert - mockRepository.VerifyAll(); - } - - [Test] [TestCase(true)] [TestCase(false)] public void Finish_VariousCalculationEndStates_NotifiesObserversOfCalculation(bool endInFailure) @@ -658,7 +573,7 @@ }; } - private static AssessmentSectionStub CreateAssessmentSection() + private static AssessmentSectionStub CreateAssessmentSection(bool usePreprocessorClosure = false) { var assessmentSection = new AssessmentSectionStub { @@ -671,7 +586,7 @@ { new TestHydraulicBoundaryLocation() }); - HydraulicBoundaryDataTestHelper.SetHydraulicLocationConfigurationSettings(assessmentSection.HydraulicBoundaryData); + HydraulicBoundaryDataTestHelper.SetHydraulicLocationConfigurationSettings(assessmentSection.HydraulicBoundaryData, usePreprocessorClosure); return assessmentSection; }