Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs
===================================================================
diff -u -r65cec137f19d9ded25248ba376b2ea8d43c18c2c -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs (.../GrassCoverErosionOutwardsDataSynchronizationService.cs) (revision 65cec137f19d9ded25248ba376b2ea8d43c18c2c)
+++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs (.../GrassCoverErosionOutwardsDataSynchronizationService.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -91,7 +91,7 @@
/// removal of data.
/// Thrown when
/// is null.
- public static IEnumerable ClearAllCalculationOutputAndHydraulicBoundaryLocations(GrassCoverErosionOutwardsFailureMechanism failureMechanism)
+ public static IEnumerable ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(GrassCoverErosionOutwardsFailureMechanism failureMechanism)
{
if (failureMechanism == null)
{
Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsDataSynchronizationServiceTest.cs
===================================================================
diff -u -r65cec137f19d9ded25248ba376b2ea8d43c18c2c -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsDataSynchronizationServiceTest.cs (.../GrassCoverErosionOutwardsDataSynchronizationServiceTest.cs) (revision 65cec137f19d9ded25248ba376b2ea8d43c18c2c)
+++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Service.Test/GrassCoverErosionOutwardsDataSynchronizationServiceTest.cs (.../GrassCoverErosionOutwardsDataSynchronizationServiceTest.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -134,18 +134,18 @@
}
[Test]
- public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_WithoutAssessmentSection_ThrowsArgumentNullException()
+ public void ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations_WithoutAssessmentSection_ThrowsArgumentNullException()
{
// Call
- TestDelegate call = () => GrassCoverErosionOutwardsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(null);
+ TestDelegate call = () => GrassCoverErosionOutwardsDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(null);
// Assert
var exception = Assert.Throws(call);
Assert.AreEqual("failureMechanism", exception.ParamName);
}
[Test]
- public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationAndOutput_ClearsHydraulicBoundaryLocationAndCalculationsAndReturnsAffectedCalculations()
+ public void ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationAndOutput_ClearsHydraulicBoundaryLocationAndCalculationsAndReturnsAffectedCalculations()
{
// Setup
GrassCoverErosionOutwardsFailureMechanism failureMechanism = new GrassCoverErosionOutwardsFailureMechanism();
@@ -176,7 +176,7 @@
failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
// Call
- IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+ IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
// Assert
foreach (GrassCoverErosionOutwardsWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children.Cast())
@@ -192,7 +192,7 @@
}
[Test]
- public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationNoOutput_ClearsHydraulicBoundaryLocationAndReturnsAffectedCalculations()
+ public void ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationNoOutput_ClearsHydraulicBoundaryLocationAndReturnsAffectedCalculations()
{
// Setup
GrassCoverErosionOutwardsFailureMechanism failureMechanism = new GrassCoverErosionOutwardsFailureMechanism();
@@ -221,7 +221,7 @@
failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
// Call
- IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+ IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
// Assert
foreach (GrassCoverErosionOutwardsWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children.Cast())
@@ -236,7 +236,7 @@
}
[Test]
- public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithOutputAndNoHydraulicBoundaryLocation_ClearsOutputAndReturnsAffectedCalculations()
+ public void ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithOutputAndNoHydraulicBoundaryLocation_ClearsOutputAndReturnsAffectedCalculations()
{
// Setup
GrassCoverErosionOutwardsFailureMechanism failureMechanism = new GrassCoverErosionOutwardsFailureMechanism();
@@ -258,7 +258,7 @@
failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
// Call
- IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+ IEnumerable affectedItems = GrassCoverErosionOutwardsDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
// Assert
foreach (GrassCoverErosionOutwardsWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children.Cast())
Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/Ringtoets.Integration.Service.csproj
===================================================================
diff -u -rfbdcde760eb5401367c8b922504819cd263d58a2 -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/Integration/src/Ringtoets.Integration.Service/Ringtoets.Integration.Service.csproj (.../Ringtoets.Integration.Service.csproj) (revision fbdcde760eb5401367c8b922504819cd263d58a2)
+++ Ringtoets/Integration/src/Ringtoets.Integration.Service/Ringtoets.Integration.Service.csproj (.../Ringtoets.Integration.Service.csproj) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -115,6 +115,16 @@
Ringtoets.StabilityStoneCover.Service
False
+
+ {567E0B69-5280-41CE-ADD6-443725A61C86}
+ Ringtoets.WaveImpactAsphaltCover.Data
+ False
+
+
+ {9E4A7C0B-F8B5-4101-B9D5-90F3F3C0FF7C}
+ Ringtoets.WaveImpactAsphaltCover.Service
+ False
+
Index: Ringtoets/Integration/src/Ringtoets.Integration.Service/RingtoetsDataSynchronizationService.cs
===================================================================
diff -u -r65cec137f19d9ded25248ba376b2ea8d43c18c2c -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/Integration/src/Ringtoets.Integration.Service/RingtoetsDataSynchronizationService.cs (.../RingtoetsDataSynchronizationService.cs) (revision 65cec137f19d9ded25248ba376b2ea8d43c18c2c)
+++ Ringtoets/Integration/src/Ringtoets.Integration.Service/RingtoetsDataSynchronizationService.cs (.../RingtoetsDataSynchronizationService.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -36,6 +36,8 @@
using Ringtoets.Piping.Service;
using Ringtoets.StabilityStoneCover.Data;
using Ringtoets.StabilityStoneCover.Service;
+using Ringtoets.WaveImpactAsphaltCover.Data;
+using Ringtoets.WaveImpactAsphaltCover.Service;
namespace Ringtoets.Integration.Service
{
@@ -67,6 +69,7 @@
var stabilityStoneCoverFailureMechanism = failureMechanism as StabilityStoneCoverFailureMechanism;
var heightStructuresFailureMechanism = failureMechanism as HeightStructuresFailureMechanism;
var grassCoverErosionOutwardsFailureMechanism = failureMechanism as GrassCoverErosionOutwardsFailureMechanism;
+ var waveImpactAsphaltCoverFailureMechanism = failureMechanism as WaveImpactAsphaltCoverFailureMechanism;
if (pipingFailureMechanism != null)
{
@@ -80,9 +83,13 @@
{
affectedItems.AddRange(StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(stabilityStoneCoverFailureMechanism));
}
+ if (waveImpactAsphaltCoverFailureMechanism != null)
+ {
+ affectedItems.AddRange(WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(waveImpactAsphaltCoverFailureMechanism));
+ }
if (grassCoverErosionOutwardsFailureMechanism != null)
{
- affectedItems.AddRange(GrassCoverErosionOutwardsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(grassCoverErosionOutwardsFailureMechanism));
+ affectedItems.AddRange(GrassCoverErosionOutwardsDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(grassCoverErosionOutwardsFailureMechanism));
}
if (heightStructuresFailureMechanism != null)
{
Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/Ringtoets.Integration.Service.Test.csproj
===================================================================
diff -u -rfbdcde760eb5401367c8b922504819cd263d58a2 -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/Ringtoets.Integration.Service.Test.csproj (.../Ringtoets.Integration.Service.Test.csproj) (revision fbdcde760eb5401367c8b922504819cd263d58a2)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/Ringtoets.Integration.Service.Test.csproj (.../Ringtoets.Integration.Service.Test.csproj) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -110,6 +110,10 @@
{B479E3AF-7C34-488C-BB73-D324100D36C9}
Ringtoets.StabilityStoneCover.Data
+
+ {567E0B69-5280-41CE-ADD6-443725A61C86}
+ Ringtoets.WaveImpactAsphaltCover.Data
+
{11F1F874-45AF-43E4-8AE5-15A5C9593E28}
Ringtoets.Integration.Data
Index: Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/RingtoetsDataSynchronizationServiceTest.cs
===================================================================
diff -u -r65cec137f19d9ded25248ba376b2ea8d43c18c2c -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/RingtoetsDataSynchronizationServiceTest.cs (.../RingtoetsDataSynchronizationServiceTest.cs) (revision 65cec137f19d9ded25248ba376b2ea8d43c18c2c)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Service.Test/RingtoetsDataSynchronizationServiceTest.cs (.../RingtoetsDataSynchronizationServiceTest.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -37,6 +37,7 @@
using Ringtoets.Piping.KernelWrapper.TestUtil;
using Ringtoets.Revetment.Data;
using Ringtoets.StabilityStoneCover.Data;
+using Ringtoets.WaveImpactAsphaltCover.Data;
namespace Ringtoets.Integration.Service.Test
{
@@ -278,8 +279,8 @@
Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
};
- var emptyGrassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
- var grassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
+ var emptyGrassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
+ var grassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
{
InputParameters =
{
@@ -288,6 +289,16 @@
Output = new GrassCoverErosionOutwardsWaveConditionsOutput(Enumerable.Empty())
};
+ var emptyWaveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+ var waveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ },
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(emptyPipingCalculation);
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(pipingCalculation);
assessmentSection.GrassCoverErosionInwards.CalculationsGroup.Children.Add(emptyGrassCoverErosionInwardsCalculation);
@@ -296,29 +307,35 @@
assessmentSection.HeightStructures.CalculationsGroup.Children.Add(heightStructuresCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(emptyStabilityStoneCoverWaveConditionsCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(stabilityStoneCoverWaveConditionsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(emptyWaveImpactAshpaltCoverWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(waveImpactAshpaltCoverWaveConditionsCalculation);
// Call
+
IEnumerable affectedItems = RingtoetsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(assessmentSection);
// Assert
Assert.IsNull(pipingCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(grassCoverErosionInwardsCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(heightStructuresCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(stabilityStoneCoverWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
- Assert.IsNull(grassCoverErosionOutwardsCalculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(grassCoverErosionOutwardsWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(waveImpactAshpaltCoverWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(pipingCalculation.Output);
Assert.IsNull(grassCoverErosionInwardsCalculation.Output);
Assert.IsNull(heightStructuresCalculation.Output);
Assert.IsNull(stabilityStoneCoverWaveConditionsCalculation.Output);
- Assert.IsNull(grassCoverErosionOutwardsCalculation.Output);
+ Assert.IsNull(grassCoverErosionOutwardsWaveConditionsCalculation.Output);
+ Assert.IsNull(waveImpactAshpaltCoverWaveConditionsCalculation.Output);
CollectionAssert.AreEqual(new ICalculation[]
{
pipingCalculation,
grassCoverErosionInwardsCalculation,
stabilityStoneCoverWaveConditionsCalculation,
- grassCoverErosionOutwardsCalculation,
+ waveImpactAshpaltCoverWaveConditionsCalculation,
+ grassCoverErosionOutwardsWaveConditionsCalculation,
heightStructuresCalculation
}, affectedItems);
}
@@ -366,15 +383,24 @@
}
};
- var emptyGrassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
- var grassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
+ var emptyGrassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
+ var grassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
{
InputParameters =
{
HydraulicBoundaryLocation = hydraulicBoundaryLocation
}
};
+ var emptyWaveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+ var waveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ }
+ };
+
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(emptyPipingCalculation);
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(pipingCalculation);
assessmentSection.GrassCoverErosionInwards.CalculationsGroup.Children.Add(emptyGrassCoverErosionInwardsCalculation);
@@ -383,8 +409,10 @@
assessmentSection.HeightStructures.CalculationsGroup.Children.Add(heightStructuresCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(emptyStabilityStoneCoverWaveConditionsCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(stabilityStoneCoverWaveConditionsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(emptyWaveImpactAshpaltCoverWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(waveImpactAshpaltCoverWaveConditionsCalculation);
// Call
IEnumerable affectedItems = RingtoetsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(assessmentSection);
@@ -394,13 +422,15 @@
Assert.IsNull(grassCoverErosionInwardsCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(heightStructuresCalculation.InputParameters.HydraulicBoundaryLocation);
Assert.IsNull(stabilityStoneCoverWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
- Assert.IsNull(grassCoverErosionOutwardsCalculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(grassCoverErosionOutwardsWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(waveImpactAshpaltCoverWaveConditionsCalculation.InputParameters.HydraulicBoundaryLocation);
CollectionAssert.AreEqual(new ICalculation[]
{
pipingCalculation,
grassCoverErosionInwardsCalculation,
stabilityStoneCoverWaveConditionsCalculation,
- grassCoverErosionOutwardsCalculation,
+ waveImpactAshpaltCoverWaveConditionsCalculation,
+ grassCoverErosionOutwardsWaveConditionsCalculation,
heightStructuresCalculation
}, affectedItems);
}
@@ -435,12 +465,18 @@
Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
};
- var emptyGrassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
- var grassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
+ var emptyGrassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
+ var grassCoverErosionOutwardsWaveConditionsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation
{
Output = new GrassCoverErosionOutwardsWaveConditionsOutput(Enumerable.Empty())
};
+ var emptyWaveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+ var waveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(emptyPipingCalculation);
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(pipingCalculation);
assessmentSection.GrassCoverErosionInwards.CalculationsGroup.Children.Add(emptyGrassCoverErosionInwardsCalculation);
@@ -449,8 +485,10 @@
assessmentSection.HeightStructures.CalculationsGroup.Children.Add(heightStructuresCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(emptyStabilityStoneCoverWaveConditionsCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(stabilityStoneCoverWaveConditionsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsCalculation);
- assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(grassCoverErosionOutwardsWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(emptyWaveImpactAshpaltCoverWaveConditionsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(waveImpactAshpaltCoverWaveConditionsCalculation);
// Call
IEnumerable affectedItems = RingtoetsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(assessmentSection);
@@ -460,13 +498,15 @@
Assert.IsNull(grassCoverErosionInwardsCalculation.Output);
Assert.IsNull(heightStructuresCalculation.Output);
Assert.IsNull(stabilityStoneCoverWaveConditionsCalculation.Output);
- Assert.IsNull(grassCoverErosionOutwardsCalculation.Output);
+ Assert.IsNull(grassCoverErosionOutwardsWaveConditionsCalculation.Output);
+ Assert.IsNull(waveImpactAshpaltCoverWaveConditionsCalculation.Output);
CollectionAssert.AreEqual(new ICalculation[]
{
pipingCalculation,
grassCoverErosionInwardsCalculation,
stabilityStoneCoverWaveConditionsCalculation,
- grassCoverErosionOutwardsCalculation,
+ waveImpactAshpaltCoverWaveConditionsCalculation,
+ grassCoverErosionOutwardsWaveConditionsCalculation,
heightStructuresCalculation
}, affectedItems);
}
@@ -482,12 +522,14 @@
var emptyHeightStructuresCalculation = new HeightStructuresCalculation();
var emptyStabilityStoneCoverWaveConditionsCalculation = new StabilityStoneCoverWaveConditionsCalculation();
var emptyGrassCoverErosionOutwardsCalculation = new GrassCoverErosionOutwardsWaveConditionsCalculation();
+ var emptyWaveImpactAshpaltCoverWaveConditionsCalculation = new WaveImpactAsphaltCoverWaveConditionsCalculation();
assessmentSection.PipingFailureMechanism.CalculationsGroup.Children.Add(emptyPipingCalculation);
assessmentSection.GrassCoverErosionInwards.CalculationsGroup.Children.Add(emptyGrassCoverErosionInwardsCalculation);
assessmentSection.HeightStructures.CalculationsGroup.Children.Add(emptyHeightStructuresCalculation);
assessmentSection.StabilityStoneCover.WaveConditionsCalculationGroup.Children.Add(emptyStabilityStoneCoverWaveConditionsCalculation);
assessmentSection.GrassCoverErosionOutwards.WaveConditionsCalculationGroup.Children.Add(emptyGrassCoverErosionOutwardsCalculation);
+ assessmentSection.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children.Add(emptyWaveImpactAshpaltCoverWaveConditionsCalculation);
// Call
IEnumerable affectedItems = RingtoetsDataSynchronizationService.ClearAllCalculationOutputAndHydraulicBoundaryLocations(assessmentSection);
Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/Ringtoets.StabilityStoneCover.Service.Test.csproj
===================================================================
diff -u -ra928ee0f1a12e23c695da35485752de4e059e770 -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/Ringtoets.StabilityStoneCover.Service.Test.csproj (.../Ringtoets.StabilityStoneCover.Service.Test.csproj) (revision a928ee0f1a12e23c695da35485752de4e059e770)
+++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/Ringtoets.StabilityStoneCover.Service.Test.csproj (.../Ringtoets.StabilityStoneCover.Service.Test.csproj) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -53,7 +53,7 @@
Properties\GlobalAssembly.cs
-
+
Fisheye: Tag c96cfd7d2d167db3b0775f7d76f320c5e582ae27 refers to a dead (removed) revision in file `Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverDataSynchronizationService.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverDataSynchronizationServiceTest.cs
===================================================================
diff -u
--- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverDataSynchronizationServiceTest.cs (revision 0)
+++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Service.Test/StabilityStoneCoverDataSynchronizationServiceTest.cs (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -0,0 +1,234 @@
+// Copyright (C) Stichting Deltares 2016. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using NUnit.Framework;
+using Ringtoets.HydraRing.Data;
+using Ringtoets.Revetment.Data;
+using Ringtoets.StabilityStoneCover.Data;
+
+namespace Ringtoets.StabilityStoneCover.Service.Test
+{
+ [TestFixture]
+ public class StabilityStoneCoverDataSynchronizationServiceTest
+ {
+ [Test]
+ public void ClearWaveConditionsCalculationOutput_CalculationNull_ThrowsArgumentNullException()
+ {
+ // Call
+ TestDelegate test = () => StabilityStoneCoverDataSynchronizationService.ClearWaveConditionsCalculationOutput(null);
+
+ // Assert
+ var exception = Assert.Throws(test);
+ Assert.AreEqual("calculation", exception.ParamName);
+ }
+
+ [Test]
+ public void ClearWaveConditionsCalculationOutput_WithCalculation_OutputNull()
+ {
+ // Setup
+ var calculation = new StabilityStoneCoverWaveConditionsCalculation()
+ {
+ Output = new StabilityStoneCoverWaveConditionsOutput(new[]
+ {
+ new WaveConditionsOutput(12.0, 4.3, 0.4, 49)
+ }, new[]
+ {
+ new WaveConditionsOutput(6.0, 3.7, 4.3, 29)
+ })
+ };
+
+ // Precondition
+ Assert.IsNotNull(calculation.Output);
+
+ // Call
+ StabilityStoneCoverDataSynchronizationService.ClearWaveConditionsCalculationOutput(calculation);
+
+ // Assert
+ Assert.IsNull(calculation.Output);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_WithoutFailureMechanism_ThrowsArgumentNullException()
+ {
+ // Call
+ TestDelegate call = () => StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(null);
+
+ // Assert
+ var exception = Assert.Throws(call);
+ Assert.AreEqual("failureMechanism", exception.ParamName);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationAndOutput_ClearsHydraulicBoundaryLocationAndCalculationsAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new StabilityStoneCoverFailureMechanism();
+ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, string.Empty, 0, 0);
+
+ var calculation1 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ },
+ Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
+ };
+
+ var calculation2 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ },
+ Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
+ };
+
+ var calculation3 = new StabilityStoneCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (StabilityStoneCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(calculation.Output);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationNoOutput_ClearsHydraulicBoundaryLocationAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new StabilityStoneCoverFailureMechanism();
+ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, string.Empty, 0, 0);
+
+ var calculation1 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ }
+ };
+
+ var calculation2 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ }
+ };
+
+ var calculation3 = new StabilityStoneCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (StabilityStoneCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.InputParameters.HydraulicBoundaryLocation);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithOutputAndNoHydraulicBoundaryLocation_ClearsOutputAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new StabilityStoneCoverFailureMechanism();
+
+ var calculation1 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
+ };
+
+ var calculation2 = new StabilityStoneCoverWaveConditionsCalculation
+ {
+ Output = new StabilityStoneCoverWaveConditionsOutput(Enumerable.Empty(), Enumerable.Empty())
+ };
+
+ var calculation3 = new StabilityStoneCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (StabilityStoneCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.Output);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationWithoutOutputAndHydraulicBoundaryLocation_ReturnNoAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new StabilityStoneCoverFailureMechanism();
+
+ var calculation1 = new StabilityStoneCoverWaveConditionsCalculation();
+ var calculation2 = new StabilityStoneCoverWaveConditionsCalculation();
+ var calculation3 = new StabilityStoneCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = StabilityStoneCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ CollectionAssert.IsEmpty(affectedItems);
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverDataSynchronizationService.cs
===================================================================
diff -u -r656d5126496add226d3bbdb348ef4a4354e4119e -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverDataSynchronizationService.cs (.../WaveImpactAsphaltCoverDataSynchronizationService.cs) (revision 656d5126496add226d3bbdb348ef4a4354e4119e)
+++ Ringtoets/WaveImpactAsphaltCover/src/Ringtoets.WaveImpactAsphaltCover.Service/WaveImpactAsphaltCoverDataSynchronizationService.cs (.../WaveImpactAsphaltCoverDataSynchronizationService.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -20,6 +20,10 @@
// All rights reserved.
using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using Ringtoets.HydraRing.Data;
using Ringtoets.WaveImpactAsphaltCover.Data;
namespace Ringtoets.WaveImpactAsphaltCover.Service
@@ -45,5 +49,55 @@
calculation.Output = null;
}
+
+ ///
+ /// Clears the and output for all the wave conditions calculations
+ /// in the .
+ ///
+ /// The
+ /// which contains the calculations.
+ /// An of calculations which are affected by
+ /// removing data.
+ /// Thrown when
+ /// is null.
+ public static IEnumerable ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(
+ WaveImpactAsphaltCoverFailureMechanism failureMechanism)
+ {
+ if (failureMechanism == null)
+ {
+ throw new ArgumentNullException("failureMechanism");
+ }
+
+ Collection affectedItems = new Collection();
+
+ foreach (var calculation in failureMechanism.Calculations.Cast())
+ {
+ var calculationChanged = false;
+
+ if (calculation.HasOutput)
+ {
+ ClearWaveConditionsCalculationOutput(calculation);
+ calculationChanged = true;
+ }
+
+ if (calculation.InputParameters.HydraulicBoundaryLocation != null)
+ {
+ ClearHydraulicBoundaryLocation(calculation);
+ calculationChanged = true;
+ }
+
+ if (calculationChanged)
+ {
+ affectedItems.Add(calculation);
+ }
+ }
+
+ return affectedItems;
+ }
+
+ private static void ClearHydraulicBoundaryLocation(WaveImpactAsphaltCoverWaveConditionsCalculation calculation)
+ {
+ calculation.InputParameters.HydraulicBoundaryLocation = null;
+ }
}
}
\ No newline at end of file
Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/Ringtoets.WaveImpactAsphaltCover.Service.Test.csproj
===================================================================
diff -u -r656d5126496add226d3bbdb348ef4a4354e4119e -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/Ringtoets.WaveImpactAsphaltCover.Service.Test.csproj (.../Ringtoets.WaveImpactAsphaltCover.Service.Test.csproj) (revision 656d5126496add226d3bbdb348ef4a4354e4119e)
+++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/Ringtoets.WaveImpactAsphaltCover.Service.Test.csproj (.../Ringtoets.WaveImpactAsphaltCover.Service.Test.csproj) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -75,6 +75,11 @@
{888D4097-8BC2-4703-9FB1-8744C94D525E}
Ringtoets.HydraRing.Calculation
+
+ {70F8CC9C-5BC8-4FB2-B201-EAE7FA8088C2}
+ Ringtoets.HydraRing.Data
+ True
+
{87c2c553-c0bc-40bf-b1ea-b83bff357f27}
Ringtoets.Revetment.Data
Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverDataSynchronizationServiceTest.cs
===================================================================
diff -u -r656d5126496add226d3bbdb348ef4a4354e4119e -rc96cfd7d2d167db3b0775f7d76f320c5e582ae27
--- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverDataSynchronizationServiceTest.cs (.../WaveImpactAsphaltCoverDataSynchronizationServiceTest.cs) (revision 656d5126496add226d3bbdb348ef4a4354e4119e)
+++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Service.Test/WaveImpactAsphaltCoverDataSynchronizationServiceTest.cs (.../WaveImpactAsphaltCoverDataSynchronizationServiceTest.cs) (revision c96cfd7d2d167db3b0775f7d76f320c5e582ae27)
@@ -20,8 +20,10 @@
// All rights reserved.
using System;
+using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;
+using Ringtoets.HydraRing.Data;
using Ringtoets.Revetment.Data;
using Ringtoets.WaveImpactAsphaltCover.Data;
@@ -59,5 +61,168 @@
// Assert
Assert.IsNull(calculation.Output);
}
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_WithoutFailureMechanism_ThrowsArgumentNullException()
+ {
+ // Call
+ TestDelegate call = () => WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(null);
+
+ // Assert
+ var exception = Assert.Throws(call);
+ Assert.AreEqual("failureMechanism", exception.ParamName);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationAndOutput_ClearsHydraulicBoundaryLocationAndCalculationsAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, string.Empty, 0, 0);
+
+ var calculation1 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ },
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
+ var calculation2 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ },
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
+ var calculation3 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (WaveImpactAsphaltCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.InputParameters.HydraulicBoundaryLocation);
+ Assert.IsNull(calculation.Output);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithHydraulicBoundaryLocationNoOutput_ClearsHydraulicBoundaryLocationAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+ var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, string.Empty, 0, 0);
+
+ var calculation1 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ }
+ };
+
+ var calculation2 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ InputParameters =
+ {
+ HydraulicBoundaryLocation = hydraulicBoundaryLocation
+ }
+ };
+
+ var calculation3 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (WaveImpactAsphaltCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.InputParameters.HydraulicBoundaryLocation);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationsWithOutputAndNoHydraulicBoundaryLocation_ClearsOutputAndReturnsAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+
+ var calculation1 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
+ var calculation2 = new WaveImpactAsphaltCoverWaveConditionsCalculation
+ {
+ Output = new WaveImpactAsphaltCoverWaveConditionsOutput(Enumerable.Empty())
+ };
+
+ var calculation3 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ foreach (WaveImpactAsphaltCoverWaveConditionsCalculation calculation in failureMechanism.WaveConditionsCalculationGroup.Children
+ .Cast())
+ {
+ Assert.IsNull(calculation.Output);
+ }
+ CollectionAssert.AreEqual(new[]
+ {
+ calculation1,
+ calculation2
+ }, affectedItems);
+ }
+
+ [Test]
+ public void ClearAllCalculationOutputAndHydraulicBoundaryLocations_CalculationWithoutOutputAndHydraulicBoundaryLocation_ReturnNoAffectedCalculations()
+ {
+ // Setup
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+
+ var calculation1 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+ var calculation2 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+ var calculation3 = new WaveImpactAsphaltCoverWaveConditionsCalculation();
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation1);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation2);
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(calculation3);
+
+ // Call
+ IEnumerable affectedItems = WaveImpactAsphaltCoverDataSynchronizationService.ClearAllWaveConditionsCalculationOutputAndHydraulicBoundaryLocations(failureMechanism);
+
+ // Assert
+ CollectionAssert.IsEmpty(affectedItems);
+ }
}
}
\ No newline at end of file