Index: Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicBoundaryDatabaseUpdateHandler.cs =================================================================== diff -u -r68b48cabc31ec9841d83a98d01402bae0dd63440 -r326ee7c1b4612e9f4d5f6751df6d6808fdf9b356 --- Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicBoundaryDatabaseUpdateHandler.cs (.../HydraulicBoundaryDatabaseUpdateHandler.cs) (revision 68b48cabc31ec9841d83a98d01402bae0dd63440) +++ Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicBoundaryDatabaseUpdateHandler.cs (.../HydraulicBoundaryDatabaseUpdateHandler.cs) (revision 326ee7c1b4612e9f4d5f6751df6d6808fdf9b356) @@ -25,6 +25,7 @@ using System.Windows.Forms; using Core.Common.Base; using Riskeer.Common.Data.Hydraulics; +using Riskeer.DuneErosion.Data; using Riskeer.DuneErosion.Plugin.Handlers; using Riskeer.HydraRing.IO.HydraulicBoundaryDatabase; using Riskeer.HydraRing.IO.HydraulicLocationConfigurationDatabase; @@ -187,7 +188,7 @@ private IEnumerable GetLocationsAndCalculationsObservables(HydraulicBoundaryDatabase hydraulicBoundaryDatabase) { - return new IObservable[] + var locationsAndCalculationsObservables = new List { hydraulicBoundaryDatabase.Locations, assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm, @@ -204,9 +205,25 @@ assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificFactorizedSignalingNorm, assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificSignalingNorm, assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificLowerLimitNorm, - assessmentSection.DuneErosion.DuneLocations, - assessmentSection.DuneErosion.DuneLocationCalculationsForUserDefinedTargetProbabilities + assessmentSection.DuneErosion.DuneLocations }; + + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities) + { + locationsAndCalculationsObservables.Add(element.HydraulicBoundaryLocationCalculations); + } + + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities) + { + locationsAndCalculationsObservables.Add(element.HydraulicBoundaryLocationCalculations); + } + + foreach (DuneLocationCalculationsForTargetProbability element in assessmentSection.DuneErosion.DuneLocationCalculationsForUserDefinedTargetProbabilities) + { + locationsAndCalculationsObservables.Add(element.DuneLocationCalculations); + } + + return locationsAndCalculationsObservables; } private static void SetLocations(HydraulicBoundaryDatabase hydraulicBoundaryDatabase, IEnumerable readLocations, Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicBoundaryDatabaseUpdateHandlerTest.cs =================================================================== diff -u -r68b48cabc31ec9841d83a98d01402bae0dd63440 -r326ee7c1b4612e9f4d5f6751df6d6808fdf9b356 --- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicBoundaryDatabaseUpdateHandlerTest.cs (.../HydraulicBoundaryDatabaseUpdateHandlerTest.cs) (revision 68b48cabc31ec9841d83a98d01402bae0dd63440) +++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicBoundaryDatabaseUpdateHandlerTest.cs (.../HydraulicBoundaryDatabaseUpdateHandlerTest.cs) (revision 326ee7c1b4612e9f4d5f6751df6d6808fdf9b356) @@ -31,6 +31,7 @@ using Riskeer.Common.Data.Calculation; using Riskeer.Common.Data.Hydraulics; using Riskeer.Common.Data.TestUtil; +using Riskeer.DuneErosion.Data; using Riskeer.DuneErosion.Plugin.Handlers; using Riskeer.GrassCoverErosionOutwards.Data; using Riskeer.HydraRing.IO.HydraulicBoundaryDatabase; @@ -487,7 +488,10 @@ var mocks = new MockRepository(); var duneLocationsReplacementHandler = mocks.StrictMock(); duneLocationsReplacementHandler.Expect(h => h.Replace(Arg>.Is.NotNull)) - .WhenCalled(invocation => { Assert.AreSame(hydraulicBoundaryDatabase.Locations, invocation.Arguments[0]); }); + .WhenCalled(invocation => + { + Assert.AreSame(hydraulicBoundaryDatabase.Locations, invocation.Arguments[0]); + }); mocks.ReplayAll(); AssessmentSection assessmentSection = CreateAssessmentSection(); @@ -536,7 +540,10 @@ var mocks = new MockRepository(); var duneLocationsReplacementHandler = mocks.StrictMock(); duneLocationsReplacementHandler.Expect(h => h.Replace(Arg>.Is.NotNull)) - .WhenCalled(invocation => { Assert.AreSame(hydraulicBoundaryDatabase.Locations, invocation.Arguments[0]); }); + .WhenCalled(invocation => + { + Assert.AreSame(hydraulicBoundaryDatabase.Locations, invocation.Arguments[0]); + }); mocks.ReplayAll(); const string hydraulicBoundaryDatabaseFilePath = "some/file/path"; @@ -786,7 +793,7 @@ Enumerable.Empty(), hydraulicBoundaryDatabaseFilePath, hlcdFilePath); // Then - CollectionAssert.AreEqual(new IObservable[] + var observables = new List { hydraulicBoundaryDatabase.Locations, assessmentSection.WaterLevelCalculationsForFactorizedSignalingNorm, @@ -803,9 +810,25 @@ assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificFactorizedSignalingNorm, assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificSignalingNorm, assessmentSection.GrassCoverErosionOutwards.WaveHeightCalculationsForMechanismSpecificLowerLimitNorm, - assessmentSection.DuneErosion.DuneLocations, - assessmentSection.DuneErosion.DuneLocationCalculationsForUserDefinedTargetProbabilities - }, changedObjects); + assessmentSection.DuneErosion.DuneLocations + }; + + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaterLevelCalculationsForUserDefinedTargetProbabilities) + { + observables.Add(element.HydraulicBoundaryLocationCalculations); + } + + foreach (HydraulicBoundaryLocationCalculationsForTargetProbability element in assessmentSection.WaveHeightCalculationsForUserDefinedTargetProbabilities) + { + observables.Add(element.HydraulicBoundaryLocationCalculations); + } + + foreach (DuneLocationCalculationsForTargetProbability element in assessmentSection.DuneErosion.DuneLocationCalculationsForUserDefinedTargetProbabilities) + { + observables.Add(element.DuneLocationCalculations); + } + + CollectionAssert.AreEqual(observables, changedObjects); mocks.VerifyAll(); }