Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingCalculationInput.cs =================================================================== diff -u -rc3195f7a1668f7479989ed59de1198b53bc80d8a -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingCalculationInput.cs (.../OvertoppingCalculationInput.cs) (revision c3195f7a1668f7479989ed59de1198b53bc80d8a) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingCalculationInput.cs (.../OvertoppingCalculationInput.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -31,22 +31,38 @@ private readonly HydraRingSection section; private readonly IEnumerable profilePoints; private readonly IEnumerable forelandPoints; + private readonly IEnumerable breakwaters; + private readonly double dikeHeight; + private readonly double criticalOvertoppingMean; + private readonly double criticalOvertoppingStandardDeviation; + /// /// Creates a new instance of the class. /// /// The id of the hydraulic station to use during the calculation. /// The section to use during the calculation. + /// The dike height to use during the calculation. + /// The mean of the critical overtopping to use during the calculation. + /// The standard deviation of the critical overtopping to use during the calculation. /// The profile points to use during the calculation. /// The foreland points to use during the calculation. + /// The break water to use during the calculation. public OvertoppingCalculationInput(int hydraulicBoundaryLocationId, HydraRingSection hydraRingSection, + double hydraRingDikeHeight, double hydraRingCriticalOvertoppingMean, + double hydraRingCriticalOvertoppingStandardDeviation, IEnumerable hydraRingProfilePoints, - IEnumerable hydraRingForelandPoints) + IEnumerable hydraRingForelandPoints, + IEnumerable hydraRingBreakwaters) : base(hydraulicBoundaryLocationId) { section = hydraRingSection; + dikeHeight = hydraRingDikeHeight; + criticalOvertoppingMean = hydraRingCriticalOvertoppingMean; + criticalOvertoppingStandardDeviation = hydraRingCriticalOvertoppingStandardDeviation; profilePoints = hydraRingProfilePoints; forelandPoints = hydraRingForelandPoints; + breakwaters = hydraRingBreakwaters; } public override HydraRingFailureMechanismType FailureMechanismType @@ -89,6 +105,29 @@ } } + public override IEnumerable BreakWaters + { + get + { + return breakwaters; + } + } + + public override IEnumerable Variables + { + get + { + yield return new OvertoppingVariableDikeHeight(dikeHeight); + yield return new OvertoppingVariableModelFactorCriticalOvertopping(); + yield return new OvertoppingVariableFactorFb(); + yield return new OvertoppingVariableFactorFn(); + yield return new OvertoppingVariableModelFactorOvertopping(); + yield return new OvertoppingVariableCriticalOvertopping(criticalOvertoppingMean, criticalOvertoppingStandardDeviation); + yield return new OvertoppingVariableModelFactorFrunup(); + yield return new OvertoppingVariableExponentModelFactorShallow(); + } + } + public override int? GetSubMechanismModelId(int subMechanismId) { switch (subMechanismId) @@ -101,5 +140,44 @@ return null; } } + + #region Overtopping Variables + + private class OvertoppingVariableDikeHeight : HydraRingVariable + { + public OvertoppingVariableDikeHeight(double dikeHeight) : base(1, HydraRingDistributionType.Deterministic, dikeHeight, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingVariableModelFactorCriticalOvertopping : HydraRingVariable + { + public OvertoppingVariableModelFactorCriticalOvertopping() : base(8, HydraRingDistributionType.Deterministic, 1.0, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingVariableFactorFb : HydraRingVariable + { + public OvertoppingVariableFactorFb() : base(10, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 4.75, 0.5, double.NaN) {} + } + + private class OvertoppingVariableFactorFn : HydraRingVariable + { + public OvertoppingVariableFactorFn() : base(11, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 2.60, 0.35, double.NaN) {} + } + + private class OvertoppingVariableModelFactorOvertopping : HydraRingVariable + { + public OvertoppingVariableModelFactorOvertopping() : base(12, HydraRingDistributionType.Deterministic, 1.0, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN) {} + } + + private class OvertoppingVariableModelFactorFrunup : HydraRingVariable + { + public OvertoppingVariableModelFactorFrunup() : base(120, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Variation, 1, 0.07, double.NaN) {} + } + + private class OvertoppingVariableExponentModelFactorShallow : HydraRingVariable + { + public OvertoppingVariableExponentModelFactorShallow() : base(123, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 0.92, 0.24, double.NaN) {} + } + + #endregion } } \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingVariableCriticalOvertopping.cs =================================================================== diff -u --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingVariableCriticalOvertopping.cs (revision 0) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/Overtopping/OvertoppingVariableCriticalOvertopping.cs (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -0,0 +1,40 @@ +// 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.Overtopping +{ + /// + /// Hydra-Ring variable related data for critical overtopping. + /// + internal class OvertoppingVariableCriticalOvertopping : HydraRingVariable + { + /// + /// Creates a new instance of the class. + /// + /// The mean value in case the variable is random. + /// The variability in case the variable is random. + public OvertoppingVariableCriticalOvertopping(double mean, double variability) + : base(17, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, + !double.IsNaN(mean) ? mean : 0.004, + !double.IsNaN(variability) ? variability : 0.0006, + double.NaN) {} + } +} \ No newline at end of file Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Providers/VariableDefaultsProvider.cs =================================================================== diff -u -r8b314e225c508616076c3cd8345286505711981f -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Providers/VariableDefaultsProvider.cs (.../VariableDefaultsProvider.cs) (revision 8b314e225c508616076c3cd8345286505711981f) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Providers/VariableDefaultsProvider.cs (.../VariableDefaultsProvider.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -134,12 +134,6 @@ 17, new VariableDefaults(300) }, { - 21, new VariableDefaults(300) - }, - { - 22, new VariableDefaults(300) - }, - { 120, new VariableDefaults(300) }, { Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj =================================================================== diff -u -r9d378b8fa49ea011d8f4d229b5970f11c76f8305 -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 9d378b8fa49ea011d8f4d229b5970f11c76f8305) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Ringtoets.HydraRing.Calculation.csproj (.../Ringtoets.HydraRing.Calculation.csproj) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -54,6 +54,7 @@ + Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Services/HydraRingConfigurationService.cs =================================================================== diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Services/HydraRingConfigurationService.cs (.../HydraRingConfigurationService.cs) (revision 8b5a6f938fe2b04cd78623649df37580e145055f) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Services/HydraRingConfigurationService.cs (.../HydraRingConfigurationService.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -57,6 +57,7 @@ private const double defaultLayerId = 1; private const double defaultAlternativeId = 1; private const double defaultHydraRingValue = 0.0; + private readonly double? defaultHydraRingNullValue = null; private readonly string ringId; private readonly IList hydraRingCalculationInputs; @@ -417,16 +418,16 @@ { "Parameter2", hydraRingVariable.DistributionType != HydraRingDistributionType.Deterministic && hydraRingVariable.DeviationType == HydraRingDeviationType.Standard - ? GetHydraRingValue(hydraRingVariable.Variability) - : defaultHydraRingValue + ? GetHydraRingNullableValue(hydraRingVariable.Variability) + : defaultHydraRingNullValue }, { "Parameter3", hydraRingVariable.DistributionType == HydraRingDistributionType.LogNormal - ? GetHydraRingValue(hydraRingVariable.Shift) - : defaultHydraRingValue + ? GetHydraRingNullableValue(hydraRingVariable.Shift) + : defaultHydraRingNullValue }, { - "Parameter4", defaultHydraRingValue // Fixed: Not relevant + "Parameter4", defaultHydraRingNullValue // Fixed: Not relevant }, { "DeviationType", (int?) hydraRingVariable.DeviationType @@ -699,9 +700,14 @@ return string.Join(Environment.NewLine, lines); } - private static double? GetHydraRingValue(double value) + private static double GetHydraRingValue(double value) { return !double.IsNaN(value) ? value : defaultHydraRingValue; } + + private double? GetHydraRingNullableValue(double value) + { + return !double.IsNaN(value) ? value : defaultHydraRingNullValue; + } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingCalculationInputTest.cs =================================================================== diff -u -rc3195f7a1668f7479989ed59de1198b53bc80d8a -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingCalculationInputTest.cs (.../OvertoppingCalculationInputTest.cs) (revision c3195f7a1668f7479989ed59de1198b53bc80d8a) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingCalculationInputTest.cs (.../OvertoppingCalculationInputTest.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -20,6 +20,7 @@ // All rights reserved. using System.Collections.Generic; +using System.Linq; using NUnit.Framework; using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Overtopping; @@ -37,6 +38,9 @@ const int expectedVariableId = 1; int hydraulicBoundaryLocationId = 1000; HydraRingSection expectedHydraRingSection = new HydraRingSection(expectedVariableId, "1000", double.NaN, double.NaN, double.NaN, double.NaN, double.NaN, double.NaN); + double dikeHeight = 11.11; + double criticalOvertoppingMean = 22.22; + double criticalOvertoppingStandardDeviation = 33.33; var expectedRingProfilePoints = new List { new HydraRingProfilePoint(1.1, 2.2) @@ -45,20 +49,26 @@ { new HydraRingForelandPoint(2.2, 3.3) }; + var expectedRingBreakwaters = new List + { + new HydraRingBreakwater(2, 3.3) + }; // Call - OvertoppingCalculationInput overtoppingCalculationInput = new OvertoppingCalculationInput(hydraulicBoundaryLocationId, expectedHydraRingSection, expectedRingProfilePoints, expectedRingForelandPoints); + OvertoppingCalculationInput overtoppingCalculationInput = new OvertoppingCalculationInput(hydraulicBoundaryLocationId, expectedHydraRingSection, dikeHeight, + criticalOvertoppingMean, criticalOvertoppingStandardDeviation, + expectedRingProfilePoints, expectedRingForelandPoints, expectedRingBreakwaters); // Assert Assert.AreEqual(expectedCalculationTypeId, overtoppingCalculationInput.CalculationTypeId); Assert.AreEqual(hydraulicBoundaryLocationId, overtoppingCalculationInput.HydraulicBoundaryLocationId); Assert.AreEqual(HydraRingFailureMechanismType.DikesOvertopping, overtoppingCalculationInput.FailureMechanismType); Assert.AreEqual(expectedVariableId, overtoppingCalculationInput.VariableId); Assert.IsNotNull(overtoppingCalculationInput.Section); - CollectionAssert.IsEmpty(overtoppingCalculationInput.Variables); + CheckOvertoppingVariables(GetDefaultOvertoppingVariables().ToArray(), overtoppingCalculationInput.Variables.ToArray()); CollectionAssert.AreEqual(expectedRingProfilePoints, overtoppingCalculationInput.ProfilePoints); CollectionAssert.AreEqual(expectedRingForelandPoints, overtoppingCalculationInput.ForelandsPoints); - CollectionAssert.IsEmpty(overtoppingCalculationInput.BreakWaters); + CollectionAssert.AreEqual(expectedRingBreakwaters, overtoppingCalculationInput.BreakWaters); Assert.IsNaN(overtoppingCalculationInput.Beta); var hydraRingSection = overtoppingCalculationInput.Section; @@ -76,10 +86,45 @@ HydraRingSection hydraRingSection = new HydraRingSection(1, "1000", double.NaN, double.NaN, double.NaN, double.NaN, double.NaN, double.NaN); // Call - OvertoppingCalculationInput overtoppingCalculationInput = new OvertoppingCalculationInput(1, hydraRingSection, new List(), new List()); + OvertoppingCalculationInput overtoppingCalculationInput = new OvertoppingCalculationInput(1, hydraRingSection, 2, 3, 4, + new List(), + new List(), + new List()); // Assert Assert.AreEqual(expectedSubMechanismModelId, overtoppingCalculationInput.GetSubMechanismModelId(subMechanismModelId)); } + + private void CheckOvertoppingVariables(HydraRingVariable[] expected, HydraRingVariable[] actual) + { + Assert.AreEqual(expected.Length, actual.Length); + for (int i = 0; i < expected.Length; i++) + { + Assert.AreEqual(expected[i].DeviationType, actual[i].DeviationType); + Assert.AreEqual(expected[i].DistributionType, actual[i].DistributionType); + Assert.AreEqual(expected[i].Mean, actual[i].Mean); + Assert.AreEqual(expected[i].Shift, actual[i].Shift); + Assert.AreEqual(expected[i].Variability, actual[i].Variability); + Assert.AreEqual(expected[i].VariableId, actual[i].VariableId); + } + } + + private IEnumerable GetDefaultOvertoppingVariables() + { + yield return new HydraRingVariableImplementation(1, HydraRingDistributionType.Deterministic, 11.11, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(8, HydraRingDistributionType.Deterministic, 1.0, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(10, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 4.75, 0.5, double.NaN); + yield return new HydraRingVariableImplementation(11, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 2.6, 0.35, double.NaN); + yield return new HydraRingVariableImplementation(12, HydraRingDistributionType.Deterministic, 1.0, HydraRingDeviationType.Standard, double.NaN, double.NaN, double.NaN); + yield return new HydraRingVariableImplementation(17, HydraRingDistributionType.LogNormal, double.NaN, HydraRingDeviationType.Standard, 22.22, 33.33, double.NaN); + yield return new HydraRingVariableImplementation(120, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Variation, 1, 0.07, double.NaN); + yield return new HydraRingVariableImplementation(123, HydraRingDistributionType.Normal, double.NaN, HydraRingDeviationType.Standard, 0.92, 0.24, double.NaN); + } + + private class HydraRingVariableImplementation : HydraRingVariable + { + public HydraRingVariableImplementation(int variableId, HydraRingDistributionType distributionType, double value, HydraRingDeviationType deviationType, double mean, double variability, double shift) : + base(variableId, distributionType, value, deviationType, mean, variability, shift) {} + } } } \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingVariableCriticalOvertoppingTest.cs =================================================================== diff -u --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingVariableCriticalOvertoppingTest.cs (revision 0) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/Overtopping/OvertoppingVariableCriticalOvertoppingTest.cs (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -0,0 +1,45 @@ +// 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 NUnit.Framework; +using Ringtoets.HydraRing.Calculation.Data.Input.Overtopping; + +namespace Ringtoets.HydraRing.Calculation.Test.Data.Input.Overtopping +{ + [TestFixture] + public class OvertoppingVariableCriticalOvertoppingTest + { + [Test] + [TestCase(1.1, double.NaN, 1.1, 0.0006)] + [TestCase(double.NaN, 1.1, 0.004, 1.1)] + [TestCase(double.NaN, double.NaN, 0.004, 0.0006)] + [TestCase(1.1, 2.2, 1.1, 2.2)] + public void Constructor_EditableValues_ReturnsExpectedValues(double mean, double standardDeviation, double expectedMean, double expectedStandardDeviation) + { + // Call + OvertoppingVariableCriticalOvertopping criticalOvertopping = new OvertoppingVariableCriticalOvertopping(mean, standardDeviation); + + // Assert + Assert.AreEqual(criticalOvertopping.Mean, expectedMean); + Assert.AreEqual(criticalOvertopping.Variability, expectedStandardDeviation); + } + } +} \ No newline at end of file Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs =================================================================== diff -u -r3c533a09fbd42d7e708a9708146ccffe55afffc4 -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision 3c533a09fbd42d7e708a9708146ccffe55afffc4) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -52,7 +52,7 @@ "INSERT INTO [Numerics] VALUES (700004, 1, 1, 1, 1, 1, 4, 50, 0.15, 0.01, 0.01, 0.01, 2, 1, 20000, 100000, 0.1, -6, 6, 25);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [VariableDatas];" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (700004, 1, 1, 1, 26, 0, 0, 0, 0, 0, 0, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 1, 1, 1, 26, 0, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [CalculationProfiles];" + Environment.NewLine + Environment.NewLine + @@ -103,6 +103,9 @@ int hydraulicBoundaryLocationId = 700004; var hydraRingSection = new HydraRingSection(hydraulicBoundaryLocationId, "700004", 2.2, 3.3, 4.4, 5.5, 6.6, 7.7); + double dikeHeight = 11.11; + double criticalOvertoppingMean = 22.22; + double criticalOvertoppingStandardDeviation = 33.33; var profilePoints = new List { new HydraRingProfilePoint(1.1, 2.2) @@ -111,8 +114,14 @@ { new HydraRingForelandPoint(1.1, 2.2) }; + var breakwater = new List + { + new HydraRingBreakwater(1, 2.2) + }; - hydraRingConfigurationService.AddHydraRingCalculationInput(new OvertoppingCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, profilePoints, forelandPoints)); + hydraRingConfigurationService.AddHydraRingCalculationInput(new OvertoppingCalculationInput(hydraulicBoundaryLocationId, hydraRingSection, + dikeHeight, criticalOvertoppingMean, criticalOvertoppingStandardDeviation + , profilePoints, forelandPoints, breakwater)); var expectedCreationScript = "DELETE FROM [HydraulicModels];" + Environment.NewLine + "INSERT INTO [HydraulicModels] VALUES (1, 1, 'WTI 2017');" + Environment.NewLine + @@ -128,6 +137,14 @@ "INSERT INTO [Numerics] VALUES (700004, 101, 1, 1, 103, 1, 4, 50, 0.15, 0.01, 0.01, 0.01, 2, 1, 20000, 100000, 0.1, -6, 6, 25);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [VariableDatas];" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 1, 11.11, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 8, 1, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 10, 0, 2, 4.75, 0.5, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 11, 0, 2, 2.6, 0.35, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 12, 1, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 17, 0, 4, 22.22, 33.33, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 120, 0, 2, 1, NULL, NULL, NULL, 1, 0.07, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (700004, 101, 1, 1, 123, 0, 2, 0.92, 0.24, NULL, NULL, 0, 0, 300);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [CalculationProfiles];" + Environment.NewLine + "INSERT INTO [CalculationProfiles] VALUES (700004, 1, 1.1, 2.2, 1);" + Environment.NewLine + @@ -169,7 +186,8 @@ "DELETE FROM [Projects];" + Environment.NewLine + "INSERT INTO [Projects] VALUES (1, 'WTI 2017', 'Ringtoets calculation');" + Environment.NewLine + Environment.NewLine + - "DELETE FROM [Breakwaters];" + Environment.NewLine; + "DELETE FROM [Breakwaters];" + Environment.NewLine + + "INSERT INTO [Breakwaters] VALUES (700004, 1, 2.2);" + Environment.NewLine; var creationScript = hydraRingConfigurationService.GenerateDataBaseCreationScript(); Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Providers/VariableDefaultsProviderTest.cs =================================================================== diff -u -rde737ee4b24659d188bb137d385572159bc099ff -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Providers/VariableDefaultsProviderTest.cs (.../VariableDefaultsProviderTest.cs) (revision de737ee4b24659d188bb137d385572159bc099ff) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Providers/VariableDefaultsProviderTest.cs (.../VariableDefaultsProviderTest.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -50,8 +50,6 @@ [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 11, 300)] [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 12, 300)] [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 17, 300)] - [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 21, 300)] - [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 22, 300)] [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 120, 300)] [TestCase(HydraRingFailureMechanismType.DikesOvertopping, 123, 300)] [TestCase(HydraRingFailureMechanismType.DikesPiping, 23, 6000)] Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj =================================================================== diff -u -re8d6c63a6e94664f7ef46dfeab3f2bfc8372e2a2 -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision e8d6c63a6e94664f7ef46dfeab3f2bfc8372e2a2) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Ringtoets.HydraRing.Calculation.Test.csproj (.../Ringtoets.HydraRing.Calculation.Test.csproj) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -66,6 +66,7 @@ + Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingCalculationServiceTest.cs =================================================================== diff -u -ra1d0c950e24eeef7e35cf3b79e7fcd9fd7af041c -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingCalculationServiceTest.cs (.../HydraRingCalculationServiceTest.cs) (revision a1d0c950e24eeef7e35cf3b79e7fcd9fd7af041c) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingCalculationServiceTest.cs (.../HydraRingCalculationServiceTest.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -77,8 +77,10 @@ var incorrectStationId = 999; var hydraRingSection = new HydraRingSection(incorrectStationId, "999", 0.0, 0.0, 0.0, 0.0, 0.0, 0.0); var targetProbabilityCalculationInput = new OvertoppingCalculationInput(incorrectStationId, hydraRingSection, + 1, 2, 3, new List(), - new List()); + new List(), + new List()); var outputFolder = Path.Combine(Path.GetTempPath(), "" + incorrectStationId); var outputFiles = new[] { Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingConfigurationServiceTest.cs =================================================================== diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r9f08122750310ba06e28e435c3c4bdf5e873d99b --- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingConfigurationServiceTest.cs (.../HydraRingConfigurationServiceTest.cs) (revision 8b5a6f938fe2b04cd78623649df37580e145055f) +++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Services/HydraRingConfigurationServiceTest.cs (.../HydraRingConfigurationServiceTest.cs) (revision 9f08122750310ba06e28e435c3c4bdf5e873d99b) @@ -64,12 +64,12 @@ "INSERT INTO [Numerics] VALUES (1, 1, 1, 1, 1, 1, 4, 50, 0.15, 0.01, 0.01, 0.01, 2, 1, 20000, 100000, 0.1, -6, 6, 25);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [VariableDatas];" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 2.2, 0, 0, 0, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 22.2, 0, 0, 0, 0, 0, 1, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 333.3, 444.4, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 3333.3, 0, 0, 0, 1, 4444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 333333.3, 0, 555555.5, 0, 1, 444444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 2.2, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 22.2, 0, 0, NULL, NULL, NULL, 1, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 333.3, 444.4, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 3333.3, NULL, NULL, NULL, 1, 4444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 333333.3, NULL, 555555.5, NULL, 1, 444444.4, 300);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [CalculationProfiles];" + Environment.NewLine + "INSERT INTO [CalculationProfiles] VALUES (1, 1, 1.1, 2.2, 3.3);" + Environment.NewLine + @@ -153,24 +153,24 @@ "INSERT INTO [Numerics] VALUES (3, 1, 1, 1, 1, 1, 4, 50, 0.15, 0.01, 0.01, 0.01, 2, 1, 20000, 100000, 0.1, -6, 6, 25);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [VariableDatas];" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 2.2, 0, 0, 0, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 22.2, 0, 0, 0, 0, 0, 1, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 333.3, 444.4, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 3333.3, 0, 0, 0, 1, 4444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 333333.3, 0, 555555.5, 0, 1, 444444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 2.2, 0, 0, 0, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 22.2, 0, 0, 0, 0, 0, 1, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 2, 333.3, 444.4, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 2, 3333.3, 0, 0, 0, 1, 4444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 4, 333333.3, 0, 555555.5, 0, 1, 444444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 2.2, 0, 0, 0, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 22.2, 0, 0, 0, 0, 0, 1, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 2, 333.3, 444.4, 0, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 2, 3333.3, 0, 0, 0, 1, 4444.4, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, 0, 0, 0, 300);" + Environment.NewLine + - "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 4, 333333.3, 0, 555555.5, 0, 1, 444444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 2.2, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 22.2, 0, 0, NULL, NULL, NULL, 1, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 333.3, 444.4, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 2, 3333.3, NULL, NULL, NULL, 1, 4444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (1, 1, 1, 1, 26, 0, 4, 333333.3, NULL, 555555.5, NULL, 1, 444444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 2.2, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 22.2, 0, 0, NULL, NULL, NULL, 1, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 2, 333.3, 444.4, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 2, 3333.3, NULL, NULL, NULL, 1, 4444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (2, 1, 1, 1, 26, 0, 4, 333333.3, NULL, 555555.5, NULL, 1, 444444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 2.2, 0, 0, NULL, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 22.2, 0, 0, NULL, NULL, NULL, 1, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 2, 333.3, 444.4, NULL, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 2, 3333.3, NULL, NULL, NULL, 1, 4444.4, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 4, 33333.3, 44444.4, 55555.5, NULL, 0, 0, 300);" + Environment.NewLine + + "INSERT INTO [VariableDatas] VALUES (3, 1, 1, 1, 26, 0, 4, 333333.3, NULL, 555555.5, NULL, 1, 444444.4, 300);" + Environment.NewLine + Environment.NewLine + "DELETE FROM [CalculationProfiles];" + Environment.NewLine + "INSERT INTO [CalculationProfiles] VALUES (1, 1, 1.1, 2.2, 3.3);" + Environment.NewLine +