Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Merge/AssessmentSectionMergeHandlerTest.cs =================================================================== diff -u -r3d2636296f5b14578798d92428159d4b597a3ab6 -r1d79604ef0197e52b238d1d53d776cfa2f272bdc --- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Merge/AssessmentSectionMergeHandlerTest.cs (.../AssessmentSectionMergeHandlerTest.cs) (revision 3d2636296f5b14578798d92428159d4b597a3ab6) +++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Merge/AssessmentSectionMergeHandlerTest.cs (.../AssessmentSectionMergeHandlerTest.cs) (revision 1d79604ef0197e52b238d1d53d776cfa2f272bdc) @@ -622,6 +622,55 @@ mocks.VerifyAll(); } + #region HydraulicBoundaryData + + [Test] + public void GivenAssessmentSection_WhenSourceAssessmentSectionHydraulicBoundaryDatabaseNotInTargetAssessmentSection_ThenHydraulicBoundaryDatabasesMerged() + { + // Given + HydraulicBoundaryLocation[] targetSectionLocations = + { + new TestHydraulicBoundaryLocation(), + new TestHydraulicBoundaryLocation() + }; + + HydraulicBoundaryLocation[] sourceSectionLocations = + { + new TestHydraulicBoundaryLocation(), + new TestHydraulicBoundaryLocation() + }; + + AssessmentSection targetAssessmentSection = CreateAssessmentSection(targetSectionLocations); + targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First().FilePath = "hbd1.sql"; + + AssessmentSection sourceAssessmentSection = CreateAssessmentSection(sourceSectionLocations); + HydraulicBoundaryDatabase sourceHydraulicBoundaryDatabase = sourceAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First(); + sourceHydraulicBoundaryDatabase.FilePath = "hbd2.sql"; + + var mocks = new MockRepository(); + var documentViewController = mocks.Stub(); + var hydraulicBoundaryDataUpdateHandler = mocks.StrictMock(); + hydraulicBoundaryDataUpdateHandler.Expect(h => h.AddHydraulicBoundaryDatabase(sourceHydraulicBoundaryDatabase)) + .WhenCalled(invocation => + { + targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.Add(sourceHydraulicBoundaryDatabase); + }) + .Return(Enumerable.Empty()); + mocks.ReplayAll(); + + var handler = new AssessmentSectionMergeHandler(documentViewController); + + // When + handler.PerformMerge(targetAssessmentSection, new AssessmentSectionMergeData( + sourceAssessmentSection, CreateDefaultConstructionProperties()), + hydraulicBoundaryDataUpdateHandler); + + // Then + mocks.VerifyAll(); + } + + # endregion + private static AssessmentSection CreateAssessmentSection(HydraulicBoundaryLocation[] locations, double targetProbability = 0.1) { var assessmentSection = new AssessmentSection(AssessmentSectionComposition.Dike) @@ -661,7 +710,7 @@ return new AssessmentSectionMergeData.ConstructionProperties(); } - #region HydraulicBoundaryData + #region HydraulicBoundaryLocationCalculations [Test] [TestCaseSource(nameof(GetHydraulicBoundaryLocationCalculationFuncs))] @@ -1136,51 +1185,6 @@ mocks.VerifyAll(); } - [Test] - public void GivenAssessmentSectionWithHydraulicBoundaryLocationCalculations_WhenSourceAssessmentSectionHydraulicBoundaryDatabaseNotInTargetAssessmentSection_ThenHydraulicBoundaryDatabasesMerged() - { - // Given - HydraulicBoundaryLocation[] targetSectionLocations = - { - new TestHydraulicBoundaryLocation(), - new TestHydraulicBoundaryLocation() - }; - - HydraulicBoundaryLocation[] sourceSectionLocations = - { - new TestHydraulicBoundaryLocation(), - new TestHydraulicBoundaryLocation() - }; - - AssessmentSection targetAssessmentSection = CreateAssessmentSection(targetSectionLocations); - targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First().FilePath = "hbd1.sql"; - - AssessmentSection sourceAssessmentSection = CreateAssessmentSection(sourceSectionLocations); - HydraulicBoundaryDatabase sourceHydraulicBoundaryDatabase = sourceAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First(); - sourceHydraulicBoundaryDatabase.FilePath = "hbd2.sql"; - - var mocks = new MockRepository(); - var documentViewController = mocks.Stub(); - var hydraulicBoundaryDataUpdateHandler = mocks.StrictMock(); - hydraulicBoundaryDataUpdateHandler.Expect(h => h.AddHydraulicBoundaryDatabase(sourceHydraulicBoundaryDatabase)) - .WhenCalled(invocation => - { - targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.Add(sourceHydraulicBoundaryDatabase); - }) - .Return(Enumerable.Empty()); - mocks.ReplayAll(); - - var handler = new AssessmentSectionMergeHandler(documentViewController); - - // When - handler.PerformMerge(targetAssessmentSection, new AssessmentSectionMergeData( - sourceAssessmentSection, CreateDefaultConstructionProperties()), - hydraulicBoundaryDataUpdateHandler); - - // Then - mocks.VerifyAll(); - } - private static void SetOutput(IEnumerable calculations, bool illustrationPoints = false) { foreach (HydraulicBoundaryLocationCalculation calculation in calculations) @@ -1207,7 +1211,7 @@ #endregion - #region DuneLocations + #region DuneLocationCalculations [Test] public void GivenAssessmentSectionWithDuneLocationCalculations_WhenTargetAssessmentSectionHasOutput_ThenCalculationsNotChanged() @@ -1501,51 +1505,6 @@ mocks.VerifyAll(); } - [Test] - public void GivenAssessmentSectionWithDuneLocationCalculations_WhenSourceAssessmentSectionHydraulicBoundaryDatabaseNotInTargetAssessmentSection_ThenHydraulicBoundaryDatabasesMerged() - { - // Given - HydraulicBoundaryLocation[] targetSectionLocations = - { - new TestHydraulicBoundaryLocation(), - new TestHydraulicBoundaryLocation() - }; - - HydraulicBoundaryLocation[] sourceSectionLocations = - { - new TestHydraulicBoundaryLocation(), - new TestHydraulicBoundaryLocation() - }; - - AssessmentSection targetAssessmentSection = CreateAssessmentSection(targetSectionLocations); - targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First().FilePath = "hbd1.sql"; - - AssessmentSection sourceAssessmentSection = CreateAssessmentSection(sourceSectionLocations); - HydraulicBoundaryDatabase sourceHydraulicBoundaryDatabase = sourceAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.First(); - sourceHydraulicBoundaryDatabase.FilePath = "hbd2.sql"; - - var mocks = new MockRepository(); - var documentViewController = mocks.Stub(); - var hydraulicBoundaryDataUpdateHandler = mocks.StrictMock(); - hydraulicBoundaryDataUpdateHandler.Expect(h => h.AddHydraulicBoundaryDatabase(sourceHydraulicBoundaryDatabase)) - .WhenCalled(invocation => - { - targetAssessmentSection.HydraulicBoundaryData.HydraulicBoundaryDatabases.Add(sourceHydraulicBoundaryDatabase); - }) - .Return(Enumerable.Empty()); - mocks.ReplayAll(); - - var handler = new AssessmentSectionMergeHandler(documentViewController); - - // When - handler.PerformMerge(targetAssessmentSection, new AssessmentSectionMergeData( - sourceAssessmentSection, CreateDefaultConstructionProperties()), - hydraulicBoundaryDataUpdateHandler); - - // Then - mocks.VerifyAll(); - } - private static IEnumerable GetDuneLocationCalculations(AssessmentSection assessmentSection) { return assessmentSection.DuneErosion.DuneLocationCalculationsForUserDefinedTargetProbabilities