Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointCalculationInput.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointCalculationInput.cs (.../StructuresStabilityPointCalculationInput.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointCalculationInput.cs (.../StructuresStabilityPointCalculationInput.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,10 +19,62 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; + namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures { /// /// Container of all data necessary for performing a structures stability point calculation via Hydra-Ring. /// - public abstract class StructuresStabilityPointCalculationInput {} + public abstract class StructuresStabilityPointCalculationInput : ExceedanceProbabilityCalculationInput + { + private readonly HydraRingSection hydraRingSection; + private readonly IEnumerable forelandPoints; + + /// + /// Creates a new instance of . + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The foreland points to use during the calculation. + protected StructuresStabilityPointCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId) + { + this.hydraRingSection = hydraRingSection; + this.forelandPoints = forelandPoints; + } + + public override HydraRingFailureMechanismType FailureMechanismType + { + get + { + return HydraRingFailureMechanismType.StructuresStructuralFailure; + } + } + + public override int VariableId + { + get + { + return 58; + } + } + + public override HydraRingSection Section + { + get + { + return hydraRingSection; + } + } + + public override IEnumerable ForelandsPoints + { + get + { + return forelandPoints; + } + } + } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInput.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInput.cs (.../StructuresStabilityPointFloodedCulvertLinearCalculationInput.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInput.cs (.../StructuresStabilityPointFloodedCulvertLinearCalculationInput.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,10 +19,23 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; + namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures { /// /// Container of all data necessary for performing a linear flooded culvert based structures stability point calculation via Hydra-Ring. /// - public class StructuresStabilityPointFloodedCulvertLinearCalculationInput : StructuresStabilityPointCalculationInput {} + public class StructuresStabilityPointFloodedCulvertLinearCalculationInput : StructuresStabilityPointCalculationInput + { + /// + /// Creates a new instance of . + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The foreland points to use during the calculation. + public StructuresStabilityPointFloodedCulvertLinearCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints) {} + } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInput.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInput.cs (.../StructuresStabilityPointFloodedCulvertQuadraticCalculationInput.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInput.cs (.../StructuresStabilityPointFloodedCulvertQuadraticCalculationInput.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,10 +19,23 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; + namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures { /// /// Container of all data necessary for performing a quadratic flooded culvert based structures stability point calculation via Hydra-Ring. /// - public class StructuresStabilityPointFloodedCulvertQuadraticCalculationInput : StructuresStabilityPointCalculationInput {} + public class StructuresStabilityPointFloodedCulvertQuadraticCalculationInput : StructuresStabilityPointCalculationInput + { + /// + /// Creates a new instance of . + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The foreland points to use during the calculation. + public StructuresStabilityPointFloodedCulvertQuadraticCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints) {} + } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInput.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInput.cs (.../StructuresStabilityPointLowSillLinearCalculationInput.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInput.cs (.../StructuresStabilityPointLowSillLinearCalculationInput.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,10 +19,23 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; + namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures { /// /// Container of all data necessary for performing a linear low sill based structures stability point calculation via Hydra-Ring. /// - public class StructuresStabilityPointLowSillLinearCalculationInput : StructuresStabilityPointCalculationInput {} + public class StructuresStabilityPointLowSillLinearCalculationInput : StructuresStabilityPointCalculationInput + { + /// + /// Creates a new instance of . + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The foreland points to use during the calculation. + public StructuresStabilityPointLowSillLinearCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints) {} + } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInput.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInput.cs (.../StructuresStabilityPointLowSillQuadraticCalculationInput.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInput.cs (.../StructuresStabilityPointLowSillQuadraticCalculationInput.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,10 +19,23 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; + namespace Ringtoets.HydraRing.Calculation.Data.Input.Structures { /// /// Container of all data necessary for performing a quadratic low sill based structures stability point calculation via Hydra-Ring. /// - public class StructuresStabilityPointLowSillQuadraticCalculationInput : StructuresStabilityPointCalculationInput {} + public class StructuresStabilityPointLowSillQuadraticCalculationInput : StructuresStabilityPointCalculationInput + { + /// + /// Creates a new instance of . + /// + /// The id of the hydraulic station to use during the calculation. + /// The section to use during the calculation. + /// The foreland points to use during the calculation. + public StructuresStabilityPointLowSillQuadraticCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints) {} + } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointCalculationInputTest.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointCalculationInputTest.cs (.../StructuresStabilityPointCalculationInputTest.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointCalculationInputTest.cs (.../StructuresStabilityPointCalculationInputTest.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,13 +19,44 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using System.Linq; using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; +using Ringtoets.HydraRing.Calculation.Data.Input; +using Ringtoets.HydraRing.Calculation.Data.Input.Structures; namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures { [TestFixture] public class StructuresStabilityPointCalculationInputTest { + [Test] + public void Constructor_ExpectedValues() + { + // Setup + const int hydraulicBoundaryLocationId = 1000; + var hydraRingSection = new HydraRingSection(1, double.NaN, double.NaN); + var forelandPoints = Enumerable.Empty(); + // Call + var input = new TestStructuresStabilityPointCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints); + + // Assert + Assert.IsInstanceOf(input); + Assert.AreEqual(hydraulicBoundaryLocationId, input.HydraulicBoundaryLocationId); + Assert.AreEqual(1, input.CalculationTypeId); + Assert.AreEqual(58, input.VariableId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresStructuralFailure, input.FailureMechanismType); + Assert.AreSame(hydraRingSection, input.Section); + Assert.AreSame(forelandPoints, input.ForelandsPoints); + } + + private class TestStructuresStabilityPointCalculationInput : StructuresStabilityPointCalculationInput + { + public TestStructuresStabilityPointCalculationInput(long hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + IEnumerable forelandPoints) + : base(hydraulicBoundaryLocationId, hydraRingSection, forelandPoints) {} + } } -} +} \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInputTest.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInputTest.cs (.../StructuresStabilityPointFloodedCulvertLinearCalculationInputTest.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertLinearCalculationInputTest.cs (.../StructuresStabilityPointFloodedCulvertLinearCalculationInputTest.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,7 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Linq; using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Structures; namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures @@ -30,11 +32,23 @@ [Test] public void Constructor_ExpectedValues() { + // Setup + const int hydraulicBoundaryLocationId = 1000; + var hydraRingSection = new HydraRingSection(1, double.NaN, double.NaN); + var forelandPoints = Enumerable.Empty(); + // Call - var input = new StructuresStabilityPointFloodedCulvertLinearCalculationInput(); + var input = new StructuresStabilityPointFloodedCulvertLinearCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + forelandPoints); // Assert Assert.IsInstanceOf(input); + Assert.AreEqual(hydraulicBoundaryLocationId, input.HydraulicBoundaryLocationId); + Assert.AreEqual(1, input.CalculationTypeId); + Assert.AreEqual(58, input.VariableId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresStructuralFailure, input.FailureMechanismType); + Assert.AreSame(hydraRingSection, input.Section); + Assert.AreSame(forelandPoints, input.ForelandsPoints); } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInputTest.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInputTest.cs (.../StructuresStabilityPointFloodedCulvertQuadraticCalculationInputTest.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointFloodedCulvertQuadraticCalculationInputTest.cs (.../StructuresStabilityPointFloodedCulvertQuadraticCalculationInputTest.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,7 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Linq; using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Structures; namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures @@ -30,11 +32,23 @@ [Test] public void Constructor_ExpectedValues() { + // Setup + const int hydraulicBoundaryLocationId = 1000; + var hydraRingSection = new HydraRingSection(1, double.NaN, double.NaN); + var forelandPoints = Enumerable.Empty(); + // Call - var input = new StructuresStabilityPointFloodedCulvertQuadraticCalculationInput(); + var input = new StructuresStabilityPointFloodedCulvertQuadraticCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + forelandPoints); // Assert Assert.IsInstanceOf(input); + Assert.AreEqual(hydraulicBoundaryLocationId, input.HydraulicBoundaryLocationId); + Assert.AreEqual(1, input.CalculationTypeId); + Assert.AreEqual(58, input.VariableId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresStructuralFailure, input.FailureMechanismType); + Assert.AreSame(hydraRingSection, input.Section); + Assert.AreSame(forelandPoints, input.ForelandsPoints); } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInputTest.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInputTest.cs (.../StructuresStabilityPointLowSillLinearCalculationInputTest.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillLinearCalculationInputTest.cs (.../StructuresStabilityPointLowSillLinearCalculationInputTest.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,7 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Linq; using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Structures; namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures @@ -30,11 +32,23 @@ [Test] public void Constructor_ExpectedValues() { + // Setup + const int hydraulicBoundaryLocationId = 1000; + var hydraRingSection = new HydraRingSection(1, double.NaN, double.NaN); + var forelandPoints = Enumerable.Empty(); + // Call - var input = new StructuresStabilityPointLowSillLinearCalculationInput(); + var input = new StructuresStabilityPointLowSillLinearCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + forelandPoints); // Assert Assert.IsInstanceOf(input); + Assert.AreEqual(hydraulicBoundaryLocationId, input.HydraulicBoundaryLocationId); + Assert.AreEqual(1, input.CalculationTypeId); + Assert.AreEqual(58, input.VariableId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresStructuralFailure, input.FailureMechanismType); + Assert.AreSame(hydraRingSection, input.Section); + Assert.AreSame(forelandPoints, input.ForelandsPoints); } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInputTest.cs =================================================================== diff -u -r5d9e63bae3f67b2f70ab579a96e3dde06cff619d -r9b06e30ac5eeb4be04600a833c21d161f7cd0b12 --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInputTest.cs (.../StructuresStabilityPointLowSillQuadraticCalculationInputTest.cs) (revision 5d9e63bae3f67b2f70ab579a96e3dde06cff619d) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Structures/StructuresStabilityPointLowSillQuadraticCalculationInputTest.cs (.../StructuresStabilityPointLowSillQuadraticCalculationInputTest.cs) (revision 9b06e30ac5eeb4be04600a833c21d161f7cd0b12) @@ -19,7 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Linq; using NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Structures; namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Structures @@ -30,11 +32,23 @@ [Test] public void Constructor_ExpectedValues() { + // Setup + const int hydraulicBoundaryLocationId = 1000; + var hydraRingSection = new HydraRingSection(1, double.NaN, double.NaN); + var forelandPoints = Enumerable.Empty(); + // Call - var input = new StructuresStabilityPointLowSillQuadraticCalculationInput(); + var input = new StructuresStabilityPointLowSillQuadraticCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + forelandPoints); // Assert Assert.IsInstanceOf(input); + Assert.AreEqual(hydraulicBoundaryLocationId, input.HydraulicBoundaryLocationId); + Assert.AreEqual(1, input.CalculationTypeId); + Assert.AreEqual(58, input.VariableId); + Assert.AreEqual(HydraRingFailureMechanismType.StructuresStructuralFailure, input.FailureMechanismType); + Assert.AreSame(hydraRingSection, input.Section); + Assert.AreSame(forelandPoints, input.ForelandsPoints); } } } \ No newline at end of file