Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInput.cs
===================================================================
diff -u
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInput.cs (revision 0)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInput.cs (revision 7f519b5cf938d07241f9cbb481a76718e11e56c1)
@@ -0,0 +1,46 @@
+// 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.
+
+namespace Ringtoets.HydraRing.Calculation.Data.Input.Hydraulics
+{
+ ///
+ /// Container of all data necessary for performing a dunes boundary conditions calculation via Hydra-Ring.
+ ///
+ public class DunesBoundaryConditionsCalculationInput : AssessmentLevelCalculationInput
+ {
+ ///
+ /// Creates a new instance of the class.
+ ///
+ /// The id of the section.
+ /// The id of the hydraulic station.
+ /// The norm.
+ public DunesBoundaryConditionsCalculationInput(int sectionId, long hydraulicBoundaryLocationId, double norm)
+ : base(sectionId, hydraulicBoundaryLocationId, norm) {}
+
+ public override HydraRingFailureMechanismType FailureMechanismType
+ {
+ get
+ {
+ return HydraRingFailureMechanismType.DunesBoundaryConditions;
+ }
+ }
+ }
+}
Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj
===================================================================
diff -u -rcda954dea54f724a567a847c271370dd03b72746 -r7f519b5cf938d07241f9cbb481a76718e11e56c1
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision cda954dea54f724a567a847c271370dd03b72746)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 7f519b5cf938d07241f9cbb481a76718e11e56c1)
@@ -69,6 +69,7 @@
+
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/AssessmentLevelCalculationInputTest.cs
===================================================================
diff -u -r716dae0b1b95fb38ad2aa6630f9ba694aa4631b2 -r7f519b5cf938d07241f9cbb481a76718e11e56c1
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/AssessmentLevelCalculationInputTest.cs (.../AssessmentLevelCalculationInputTest.cs) (revision 716dae0b1b95fb38ad2aa6630f9ba694aa4631b2)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/AssessmentLevelCalculationInputTest.cs (.../AssessmentLevelCalculationInputTest.cs) (revision 7f519b5cf938d07241f9cbb481a76718e11e56c1)
@@ -59,14 +59,14 @@
Assert.IsNaN(section.SectionLength);
Assert.IsNaN(section.CrossSectionNormal);
- var assessmentLevelVariable = assessmentLevelCalculationInput.Variables.First();
- Assert.AreEqual(26, assessmentLevelVariable.VariableId);
- Assert.AreEqual(HydraRingDistributionType.Deterministic, assessmentLevelVariable.DistributionType);
- Assert.AreEqual(0.0, assessmentLevelVariable.Value);
- Assert.AreEqual(HydraRingDeviationType.Standard, assessmentLevelVariable.DeviationType);
- Assert.IsNaN(assessmentLevelVariable.Mean);
- Assert.IsNaN(assessmentLevelVariable.Variability);
- Assert.IsNaN(assessmentLevelVariable.Shift);
+ var waterLevelVariable = assessmentLevelCalculationInput.Variables.First();
+ Assert.AreEqual(26, waterLevelVariable.VariableId);
+ Assert.AreEqual(HydraRingDistributionType.Deterministic, waterLevelVariable.DistributionType);
+ Assert.AreEqual(0.0, waterLevelVariable.Value);
+ Assert.AreEqual(HydraRingDeviationType.Standard, waterLevelVariable.DeviationType);
+ Assert.IsNaN(waterLevelVariable.Mean);
+ Assert.IsNaN(waterLevelVariable.Variability);
+ Assert.IsNaN(waterLevelVariable.Shift);
}
[Test]
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInputTest.cs
===================================================================
diff -u
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInputTest.cs (revision 0)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Hydraulics/DunesBoundaryConditionsCalculationInputTest.cs (revision 7f519b5cf938d07241f9cbb481a76718e11e56c1)
@@ -0,0 +1,82 @@
+// 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.Linq;
+using Core.Common.Utils;
+using NUnit.Framework;
+using Ringtoets.HydraRing.Calculation.Data;
+using Ringtoets.HydraRing.Calculation.Data.Input.Hydraulics;
+
+namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Hydraulics
+{
+ [TestFixture]
+ public class DunesBoundaryConditionsCalculationInputTest
+ {
+ [Test]
+ public void Constructor_ExpectedValues()
+ {
+ // Setup
+ const int norm = 10000;
+ const int sectionId = 1;
+ const long hydraulicBoundaryLocationId = 1234;
+
+ // Call
+ var dunesBoundaryConditionsCalculationInput = new DunesBoundaryConditionsCalculationInput(sectionId, hydraulicBoundaryLocationId, norm);
+
+ // Assert
+ double expectedBeta = StatisticsConverter.NormToBeta(norm);
+ Assert.AreEqual(HydraRingFailureMechanismType.DunesBoundaryConditions, dunesBoundaryConditionsCalculationInput.FailureMechanismType);
+ Assert.AreEqual(9, dunesBoundaryConditionsCalculationInput.CalculationTypeId);
+ Assert.AreEqual(26, dunesBoundaryConditionsCalculationInput.VariableId);
+ Assert.AreEqual(hydraulicBoundaryLocationId, dunesBoundaryConditionsCalculationInput.HydraulicBoundaryLocationId);
+ Assert.IsNotNull(dunesBoundaryConditionsCalculationInput.Section);
+ Assert.AreEqual(1, dunesBoundaryConditionsCalculationInput.Variables.Count());
+ CollectionAssert.IsEmpty(dunesBoundaryConditionsCalculationInput.ProfilePoints);
+ CollectionAssert.IsEmpty(dunesBoundaryConditionsCalculationInput.ForelandsPoints);
+ Assert.IsNull(dunesBoundaryConditionsCalculationInput.BreakWater);
+ Assert.AreEqual(expectedBeta, dunesBoundaryConditionsCalculationInput.Beta);
+
+ var section = dunesBoundaryConditionsCalculationInput.Section;
+ Assert.AreEqual(sectionId, section.SectionId);
+ Assert.IsNaN(section.SectionLength);
+ Assert.IsNaN(section.CrossSectionNormal);
+
+ var waterLevelVariable = dunesBoundaryConditionsCalculationInput.Variables.First();
+ Assert.AreEqual(26, waterLevelVariable.VariableId);
+ Assert.AreEqual(HydraRingDistributionType.Deterministic, waterLevelVariable.DistributionType);
+ Assert.AreEqual(0.0, waterLevelVariable.Value);
+ Assert.AreEqual(HydraRingDeviationType.Standard, waterLevelVariable.DeviationType);
+ Assert.IsNaN(waterLevelVariable.Mean);
+ Assert.IsNaN(waterLevelVariable.Variability);
+ Assert.IsNaN(waterLevelVariable.Shift);
+ }
+
+ [Test]
+ public void GetSubMechanismModelId_ReturnsExpectedValues()
+ {
+ // Call
+ var dunesBoundaryConditionsCalculationInput = new DunesBoundaryConditionsCalculationInput(1, 1, 2.2);
+
+ // Assert
+ Assert.IsNull(dunesBoundaryConditionsCalculationInput.GetSubMechanismModelId(1));
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj
===================================================================
diff -u -r28f667e2754b205e3e25fb7d4f3774003575faa4 -r7f519b5cf938d07241f9cbb481a76718e11e56c1
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 28f667e2754b205e3e25fb7d4f3774003575faa4)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 7f519b5cf938d07241f9cbb481a76718e11e56c1)
@@ -66,6 +66,7 @@
+