Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensions.cs =================================================================== diff -u -r3fb0df0ed6e64657154700ee7706e035d5bf99f5 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensions.cs (.../GrassCoverErosionInwardsOutputCreateExtensions.cs) (revision 3fb0df0ed6e64657154700ee7706e035d5bf99f5) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensions.cs (.../GrassCoverErosionInwardsOutputCreateExtensions.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -42,13 +42,13 @@ { var entity = new GrassCoverErosionInwardsOutputEntity { - IsOvertoppingDominant = Convert.ToByte(output.IsOvertoppingDominant), - WaveHeight = output.WaveHeight.ToNaNAsNull(), - RequiredProbability = output.ProbabilityAssessmentOutput.RequiredProbability.ToNaNAsNull(), - RequiredReliability = output.ProbabilityAssessmentOutput.RequiredReliability.ToNaNAsNull(), - Probability = output.ProbabilityAssessmentOutput.Probability.ToNaNAsNull(), - Reliability = output.ProbabilityAssessmentOutput.Reliability.ToNaNAsNull(), - FactorOfSafety = output.ProbabilityAssessmentOutput.FactorOfSafety.ToNaNAsNull() + IsOvertoppingDominant = Convert.ToByte(output.ResultOutput.IsOvertoppingDominant), + WaveHeight = output.ResultOutput.WaveHeight.ToNaNAsNull(), + RequiredProbability = output.ResultOutput.ProbabilityAssessmentOutput.RequiredProbability.ToNaNAsNull(), + RequiredReliability = output.ResultOutput.ProbabilityAssessmentOutput.RequiredReliability.ToNaNAsNull(), + Probability = output.ResultOutput.ProbabilityAssessmentOutput.Probability.ToNaNAsNull(), + Reliability = output.ResultOutput.ProbabilityAssessmentOutput.Reliability.ToNaNAsNull(), + FactorOfSafety = output.ResultOutput.ProbabilityAssessmentOutput.FactorOfSafety.ToNaNAsNull() }; AddEntityForDikeHeightOutput(entity, output.DikeHeightOutput); Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensions.cs =================================================================== diff -u -r3fb0df0ed6e64657154700ee7706e035d5bf99f5 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensions.cs (.../GrassCoverErosionInwardsOutputEntityReadExtensions.cs) (revision 3fb0df0ed6e64657154700ee7706e035d5bf99f5) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensions.cs (.../GrassCoverErosionInwardsOutputEntityReadExtensions.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -42,13 +42,18 @@ /// A new . internal static GrassCoverErosionInwardsOutput Read(this GrassCoverErosionInwardsOutputEntity entity) { - return new GrassCoverErosionInwardsOutput(entity.WaveHeight.ToNullAsNaN(), - Convert.ToBoolean(entity.IsOvertoppingDominant), - ReadProbabilityAssessmentOutput(entity), + return new GrassCoverErosionInwardsOutput(ReadResultOutput(entity), GetDikeHeightOutput(entity), GetOvertoppingRateOutput(entity)); } + private static GrassCoverErosionInwardsResultOutput ReadResultOutput(GrassCoverErosionInwardsOutputEntity entity) + { + return new GrassCoverErosionInwardsResultOutput(entity.WaveHeight.ToNullAsNaN(), + Convert.ToBoolean(entity.IsOvertoppingDominant), + ReadProbabilityAssessmentOutput(entity)); + } + private static ProbabilityAssessmentOutput ReadProbabilityAssessmentOutput(GrassCoverErosionInwardsOutputEntity entity) { return new ProbabilityAssessmentOutput(entity.RequiredProbability.ToNullAsNaN(), Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsCalculationCreateExtensionsTest.cs =================================================================== diff -u -r3fb0df0ed6e64657154700ee7706e035d5bf99f5 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsCalculationCreateExtensionsTest.cs (.../GrassCoverErosionInwardsCalculationCreateExtensionsTest.cs) (revision 3fb0df0ed6e64657154700ee7706e035d5bf99f5) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsCalculationCreateExtensionsTest.cs (.../GrassCoverErosionInwardsCalculationCreateExtensionsTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -239,7 +239,8 @@ // Setup var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1, true, new ProbabilityAssessmentOutput(1, 1, 1, 1, 1), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1, true, new ProbabilityAssessmentOutput(1, 1, 1, 1, 1)), new TestDikeHeightOutput(2), new TestOvertoppingRateOutput(3)) }; Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensionsTest.cs =================================================================== diff -u -r3fb0df0ed6e64657154700ee7706e035d5bf99f5 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensionsTest.cs (.../GrassCoverErosionInwardsOutputCreateExtensionsTest.cs) (revision 3fb0df0ed6e64657154700ee7706e035d5bf99f5) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputCreateExtensionsTest.cs (.../GrassCoverErosionInwardsOutputCreateExtensionsTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -44,23 +44,25 @@ var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble()); + var resultOutput = new GrassCoverErosionInwardsResultOutput(random.NextDouble(), false, probabilityAssessmentOutput); + var dikeHeightConvergence = random.NextEnumValue(); var overtoppingRateConvergence = random.NextEnumValue(); + var dikeHeightOutput = new DikeHeightOutput(random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), dikeHeightConvergence); var overtoppingRateOutput = new OvertoppingRateOutput(random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), overtoppingRateConvergence); - var output = new GrassCoverErosionInwardsOutput(random.NextDouble(), false, probabilityAssessmentOutput, - dikeHeightOutput, overtoppingRateOutput); + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); // Call GrassCoverErosionInwardsOutputEntity entity = output.Create(); // Assert - Assert.AreEqual(output.WaveHeight.Value, entity.WaveHeight); - Assert.AreEqual(Convert.ToByte(output.IsOvertoppingDominant), entity.IsOvertoppingDominant); + Assert.AreEqual(output.ResultOutput.WaveHeight.Value, entity.WaveHeight); + Assert.AreEqual(Convert.ToByte(output.ResultOutput.IsOvertoppingDominant), entity.IsOvertoppingDominant); Assert.AreEqual(probabilityAssessmentOutput.FactorOfSafety, entity.FactorOfSafety, probabilityAssessmentOutput.FactorOfSafety.GetAccuracy()); Assert.AreEqual(probabilityAssessmentOutput.Probability, entity.Probability); @@ -90,16 +92,17 @@ { // Setup var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(double.NaN, double.NaN, double.NaN, double.NaN, double.NaN); + var resultOutput = new GrassCoverErosionInwardsResultOutput(double.NaN, true, probabilityAssessmentOutput); var dikeHeightOutput = new TestDikeHeightOutput(double.NaN, CalculationConvergence.CalculatedConverged); var overtoppingRateOutput = new TestOvertoppingRateOutput(double.NaN, CalculationConvergence.CalculatedConverged); - var output = new GrassCoverErosionInwardsOutput(double.NaN, true, probabilityAssessmentOutput, dikeHeightOutput, overtoppingRateOutput); + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); // Call GrassCoverErosionInwardsOutputEntity entity = output.Create(); // Assert Assert.IsNull(entity.WaveHeight); - Assert.AreEqual(Convert.ToByte(output.IsOvertoppingDominant), entity.IsOvertoppingDominant); + Assert.AreEqual(Convert.ToByte(output.ResultOutput.IsOvertoppingDominant), entity.IsOvertoppingDominant); Assert.IsNull(entity.FactorOfSafety); Assert.IsNull(entity.Probability); Assert.IsNull(entity.Reliability); @@ -129,7 +132,9 @@ // Setup var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(1, 1, 1, 1, 1); var overtoppingRateOutput = new TestOvertoppingRateOutput(double.NaN, CalculationConvergence.CalculatedConverged); - var output = new GrassCoverErosionInwardsOutput(1, true, probabilityAssessmentOutput, null, overtoppingRateOutput); + var output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1, true, probabilityAssessmentOutput), + null, overtoppingRateOutput); // Call GrassCoverErosionInwardsOutputEntity entity = output.Create(); @@ -144,7 +149,9 @@ // Setup var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(1, 1, 1, 1, 1); var dikeHeightOutput = new TestDikeHeightOutput(double.NaN, CalculationConvergence.CalculatedConverged); - var output = new GrassCoverErosionInwardsOutput(1, true, probabilityAssessmentOutput, dikeHeightOutput, null); + var output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1, true, probabilityAssessmentOutput), + dikeHeightOutput, null); // Call GrassCoverErosionInwardsOutputEntity entity = output.Create(); Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs =================================================================== diff -u -r8bb6e849266ec28412ebfe23beccd7235c4db9bf -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs (.../StorageSqLiteIntegrationTest.cs) (revision 8bb6e849266ec28412ebfe23beccd7235c4db9bf) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs (.../StorageSqLiteIntegrationTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -1568,9 +1568,9 @@ private static void AssertGrassCoverErosionInwardsOutput(GrassCoverErosionInwardsOutput expectedOutput, GrassCoverErosionInwardsOutput actualOutput) { - Assert.AreEqual(expectedOutput.WaveHeight, actualOutput.WaveHeight); - Assert.AreEqual(expectedOutput.IsOvertoppingDominant, actualOutput.IsOvertoppingDominant); - AssertProbabilityAssessmentOutput(expectedOutput.ProbabilityAssessmentOutput, actualOutput.ProbabilityAssessmentOutput); + Assert.AreEqual(expectedOutput.ResultOutput.WaveHeight, actualOutput.ResultOutput.WaveHeight); + Assert.AreEqual(expectedOutput.ResultOutput.IsOvertoppingDominant, actualOutput.ResultOutput.IsOvertoppingDominant); + AssertProbabilityAssessmentOutput(expectedOutput.ResultOutput.ProbabilityAssessmentOutput, actualOutput.ResultOutput.ProbabilityAssessmentOutput); AssertDikeHeightOutput(expectedOutput.DikeHeightOutput, actualOutput.DikeHeightOutput); AssertOvertoppingRateOutput(expectedOutput.OvertoppingRateOutput, actualOutput.OvertoppingRateOutput); } Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensionsTest.cs =================================================================== diff -u -r3fb0df0ed6e64657154700ee7706e035d5bf99f5 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensionsTest.cs (.../GrassCoverErosionInwardsOutputEntityReadExtensionsTest.cs) (revision 3fb0df0ed6e64657154700ee7706e035d5bf99f5) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/GrassCoverErosionInwards/GrassCoverErosionInwardsOutputEntityReadExtensionsTest.cs (.../GrassCoverErosionInwardsOutputEntityReadExtensionsTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -49,15 +49,15 @@ GrassCoverErosionInwardsOutput output = entity.Read(); // Assert - Assert.AreEqual(entity.WaveHeight, output.WaveHeight.Value); - Assert.IsFalse(output.IsOvertoppingDominant); + Assert.AreEqual(entity.WaveHeight, output.ResultOutput.WaveHeight.Value); + Assert.IsFalse(output.ResultOutput.IsOvertoppingDominant); Assert.IsNull(output.DikeHeightOutput); Assert.IsNull(output.OvertoppingRateOutput); - Assert.AreEqual(entity.FactorOfSafety, output.ProbabilityAssessmentOutput.FactorOfSafety.Value); - Assert.AreEqual(entity.Probability, output.ProbabilityAssessmentOutput.Probability); - Assert.AreEqual(entity.RequiredProbability, output.ProbabilityAssessmentOutput.RequiredProbability); - Assert.AreEqual(entity.Reliability, output.ProbabilityAssessmentOutput.Reliability.Value); - Assert.AreEqual(entity.RequiredReliability, output.ProbabilityAssessmentOutput.RequiredReliability.Value); + Assert.AreEqual(entity.FactorOfSafety, output.ResultOutput.ProbabilityAssessmentOutput.FactorOfSafety.Value); + Assert.AreEqual(entity.Probability, output.ResultOutput.ProbabilityAssessmentOutput.Probability); + Assert.AreEqual(entity.RequiredProbability, output.ResultOutput.ProbabilityAssessmentOutput.RequiredProbability); + Assert.AreEqual(entity.Reliability, output.ResultOutput.ProbabilityAssessmentOutput.Reliability.Value); + Assert.AreEqual(entity.RequiredReliability, output.ResultOutput.ProbabilityAssessmentOutput.RequiredReliability.Value); } [Test] @@ -79,15 +79,15 @@ GrassCoverErosionInwardsOutput output = entity.Read(); // Assert - Assert.IsNaN(output.WaveHeight); - Assert.IsTrue(output.IsOvertoppingDominant); + Assert.IsNaN(output.ResultOutput.WaveHeight); + Assert.IsTrue(output.ResultOutput.IsOvertoppingDominant); Assert.IsNull(output.DikeHeightOutput); Assert.IsNull(output.OvertoppingRateOutput); - Assert.IsNaN(output.ProbabilityAssessmentOutput.FactorOfSafety); - Assert.IsNaN(output.ProbabilityAssessmentOutput.Probability); - Assert.IsNaN(output.ProbabilityAssessmentOutput.RequiredProbability); - Assert.IsNaN(output.ProbabilityAssessmentOutput.Reliability); - Assert.IsNaN(output.ProbabilityAssessmentOutput.RequiredReliability); + Assert.IsNaN(output.ResultOutput.ProbabilityAssessmentOutput.FactorOfSafety); + Assert.IsNaN(output.ResultOutput.ProbabilityAssessmentOutput.Probability); + Assert.IsNaN(output.ResultOutput.ProbabilityAssessmentOutput.RequiredProbability); + Assert.IsNaN(output.ResultOutput.ProbabilityAssessmentOutput.Reliability); + Assert.IsNaN(output.ResultOutput.ProbabilityAssessmentOutput.RequiredReliability); } [Test] Index: Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs =================================================================== diff -u -r8bb6e849266ec28412ebfe23beccd7235c4db9bf -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs (.../RingtoetsProjectTestHelper.cs) (revision 8bb6e849266ec28412ebfe23beccd7235c4db9bf) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs (.../RingtoetsProjectTestHelper.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -942,7 +942,8 @@ UseForeshore = true, UseBreakWater = true }, - Output = new GrassCoverErosionInwardsOutput(0.45, true, new ProbabilityAssessmentOutput(0.004, 0.95, 0.00003, 1.1, 4.5), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0.45, true, new ProbabilityAssessmentOutput(0.004, 0.95, 0.00003, 1.1, 4.5)), new DikeHeightOutput(0.56, 0.05, 2, 0.06, 3, CalculationConvergence.CalculatedConverged), new OvertoppingRateOutput(0.57, 0.07, 4, 0.08, 5, CalculationConvergence.CalculatedConverged)) } Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResult.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResult.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResult.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResult.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResult.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -48,7 +48,7 @@ { return double.NaN; } - return Calculation.Output.ProbabilityAssessmentOutput.Probability; + return Calculation.Output.ResultOutput.ProbabilityAssessmentOutput.Probability; } } Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsOutput.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsOutput.cs (.../GrassCoverErosionInwardsOutput.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsOutput.cs (.../GrassCoverErosionInwardsOutput.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -27,48 +27,31 @@ namespace Ringtoets.GrassCoverErosionInwards.Data { /// - /// The result of a grass cover erosion inwards assessment. + /// The total result of a grass cover erosion inwards assessment. /// public class GrassCoverErosionInwardsOutput : Observable, ICalculationOutput { /// /// Creates a new instance of . /// - /// The calculated wave height. - /// The value indicating whether overtopping was dominant in the calculation. - /// The probabilistic assessment output. + /// The output of the assessment result. /// The dike height output. /// The overtopping rate output. - public GrassCoverErosionInwardsOutput(double waveHeight, - bool isOvertoppingDominant, - ProbabilityAssessmentOutput probabilityAssessmentOutput, + public GrassCoverErosionInwardsOutput(GrassCoverErosionInwardsResultOutput resultOutput, DikeHeightOutput dikeHeightOutput, OvertoppingRateOutput overtoppingRateOutput) { - IsOvertoppingDominant = isOvertoppingDominant; - WaveHeight = new RoundedDouble(2, waveHeight); - ProbabilityAssessmentOutput = probabilityAssessmentOutput; + ResultOutput = resultOutput; DikeHeightOutput = dikeHeightOutput; OvertoppingRateOutput = overtoppingRateOutput; } /// - /// The height of the wave that was calculated in the overtopping sub failure mechanism. + /// Gets the output of the assessment result. /// - public RoundedDouble WaveHeight { get; } + public GrassCoverErosionInwardsResultOutput ResultOutput { get; } /// - /// Value indicating whether the overtopping sub failure mechanism was dominant over the overflow - /// sub failure mechanism. - /// - public bool IsOvertoppingDominant { get; } - - /// - /// Gets the probabilistic assessment output. - /// - public ProbabilityAssessmentOutput ProbabilityAssessmentOutput { get; } - - /// /// Gets the dike height output. /// public DikeHeightOutput DikeHeightOutput { get; } Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsResultOutput.cs =================================================================== diff -u --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsResultOutput.cs (revision 0) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsResultOutput.cs (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -0,0 +1,63 @@ +// Copyright (C) Stichting Deltares 2017. 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 Core.Common.Base.Data; +using Ringtoets.Common.Data.Probability; + +namespace Ringtoets.GrassCoverErosionInwards.Data +{ + /// + /// The result of a grass cover erosion inwards assessment. + /// + public class GrassCoverErosionInwardsResultOutput + { + /// + /// Creates a new instance of . + /// + /// The calculated wave height. + /// The value indicating whether overtopping was dominant in the calculation. + /// The probabilistic assessment output. + public GrassCoverErosionInwardsResultOutput(double waveHeight, + bool isOvertoppingDominant, + ProbabilityAssessmentOutput probabilityAssessmentOutput) + { + IsOvertoppingDominant = isOvertoppingDominant; + WaveHeight = new RoundedDouble(2, waveHeight); + ProbabilityAssessmentOutput = probabilityAssessmentOutput; + } + + /// + /// The height of the wave that was calculated in the overtopping sub failure mechanism. + /// + public RoundedDouble WaveHeight { get; } + + /// + /// Value indicating whether the overtopping sub failure mechanism was dominant over the overflow + /// sub failure mechanism. + /// + public bool IsOvertoppingDominant { get; } + + /// + /// Gets the probabilistic assessment output. + /// + public ProbabilityAssessmentOutput ProbabilityAssessmentOutput { get; } + } +} \ No newline at end of file Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/Ringtoets.GrassCoverErosionInwards.Data.csproj =================================================================== diff -u -r4340c49fb38ab7b56df8cb64b7f8adb144e640d7 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/Ringtoets.GrassCoverErosionInwards.Data.csproj (.../Ringtoets.GrassCoverErosionInwards.Data.csproj) (revision 4340c49fb38ab7b56df8cb64b7f8adb144e640d7) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Data/Ringtoets.GrassCoverErosionInwards.Data.csproj (.../Ringtoets.GrassCoverErosionInwards.Data.csproj) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -39,6 +39,7 @@ Properties\GlobalAssembly.cs + Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Forms/PropertyClasses/GrassCoverErosionInwardsOutputProperties.cs =================================================================== diff -u -r57c9aff5c1e30cb83c1cc2f33c7ce97dfe8d04fe -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Forms/PropertyClasses/GrassCoverErosionInwardsOutputProperties.cs (.../GrassCoverErosionInwardsOutputProperties.cs) (revision 57c9aff5c1e30cb83c1cc2f33c7ce97dfe8d04fe) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Forms/PropertyClasses/GrassCoverErosionInwardsOutputProperties.cs (.../GrassCoverErosionInwardsOutputProperties.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -44,7 +44,7 @@ { return propertyName.Contains(nameof(DikeHeight)) && data.DikeHeightOutput != null || propertyName.Contains(nameof(OvertoppingRate)) && data.OvertoppingRateOutput != null - || propertyName.Equals(nameof(WaveHeight)) && !double.IsNaN(data.WaveHeight); + || propertyName.Equals(nameof(WaveHeight)) && !double.IsNaN(data.ResultOutput.WaveHeight); } #region GrassCoverErosionInwards result @@ -57,7 +57,7 @@ { get { - return ProbabilityFormattingHelper.Format(data.ProbabilityAssessmentOutput.RequiredProbability); + return ProbabilityFormattingHelper.Format(data.ResultOutput.ProbabilityAssessmentOutput.RequiredProbability); } } @@ -69,7 +69,7 @@ { get { - return data.ProbabilityAssessmentOutput.RequiredReliability; + return data.ResultOutput.ProbabilityAssessmentOutput.RequiredReliability; } } @@ -81,7 +81,7 @@ { get { - return ProbabilityFormattingHelper.Format(data.ProbabilityAssessmentOutput.Probability); + return ProbabilityFormattingHelper.Format(data.ResultOutput.ProbabilityAssessmentOutput.Probability); } } @@ -93,7 +93,7 @@ { get { - return data.ProbabilityAssessmentOutput.Reliability; + return data.ResultOutput.ProbabilityAssessmentOutput.Reliability; } } @@ -105,7 +105,7 @@ { get { - return data.ProbabilityAssessmentOutput.FactorOfSafety; + return data.ResultOutput.ProbabilityAssessmentOutput.FactorOfSafety; } } @@ -118,7 +118,7 @@ { get { - return data.WaveHeight; + return data.ResultOutput.WaveHeight; } } @@ -130,7 +130,7 @@ { get { - return data.IsOvertoppingDominant; + return data.ResultOutput.IsOvertoppingDominant; } } Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs =================================================================== diff -u -r3ed8e00da47ef2780e79688a9902e12b674e4cc0 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs (.../GrassCoverErosionInwardsCalculationService.cs) (revision 3ed8e00da47ef2780e79688a9902e12b674e4cc0) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Service/GrassCoverErosionInwardsCalculationService.cs (.../GrassCoverErosionInwardsCalculationService.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -194,13 +194,13 @@ } calculation.Output = new GrassCoverErosionInwardsOutput( - overtoppingCalculator.WaveHeight, - overtoppingCalculator.IsOvertoppingDominant, - ProbabilityAssessmentService.Calculate( - assessmentSection.FailureMechanismContribution.Norm, - failureMechanismContribution, - generalInput.N, - overtoppingCalculator.ExceedanceProbabilityBeta), + new GrassCoverErosionInwardsResultOutput(overtoppingCalculator.WaveHeight, + overtoppingCalculator.IsOvertoppingDominant, + ProbabilityAssessmentService.Calculate( + assessmentSection.FailureMechanismContribution.Norm, + failureMechanismContribution, + generalInput.N, + overtoppingCalculator.ExceedanceProbabilityBeta)), dikeHeightOutput, overtoppingRateOutput); } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultTest.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultTest.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -91,7 +91,7 @@ { Calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.0, false, probabilityAssessmentOutput, + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(1.0, false, probabilityAssessmentOutput), new TestDikeHeightOutput(double.NaN), new TestOvertoppingRateOutput(double.NaN)) } @@ -116,7 +116,7 @@ { Calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.0, false, probabilityAssessmentOutput, + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(1.0, false, probabilityAssessmentOutput), new TestDikeHeightOutput(double.NaN), new TestOvertoppingRateOutput(double.NaN)) } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsOutputTest.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsOutputTest.cs (.../GrassCoverErosionInwardsOutputTest.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsOutputTest.cs (.../GrassCoverErosionInwardsOutputTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -45,21 +45,22 @@ const double overtoppingRate = 0.9; var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(requiredProbability, requiredReliability, probability, reliability, factorOfSafety); + var resultOutput = new GrassCoverErosionInwardsResultOutput(waveHeight, true, probabilityAssessmentOutput); var dikeHeightOutput = new TestDikeHeightOutput(dikeHeight); var overtoppingRateOutput = new TestOvertoppingRateOutput(overtoppingRate); // Call - var output = new GrassCoverErosionInwardsOutput(waveHeight, true, probabilityAssessmentOutput, dikeHeightOutput, overtoppingRateOutput); + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); // Assert Assert.IsInstanceOf(output); Assert.IsInstanceOf(output); - Assert.AreEqual(2, output.WaveHeight.NumberOfDecimalPlaces); - Assert.AreEqual(waveHeight, output.WaveHeight, output.WaveHeight.GetAccuracy()); - Assert.IsTrue(output.IsOvertoppingDominant); + Assert.AreEqual(2, output.ResultOutput.WaveHeight.NumberOfDecimalPlaces); + Assert.AreEqual(waveHeight, output.ResultOutput.WaveHeight, output.ResultOutput.WaveHeight.GetAccuracy()); + Assert.IsTrue(output.ResultOutput.IsOvertoppingDominant); - Assert.AreSame(probabilityAssessmentOutput, output.ProbabilityAssessmentOutput); + Assert.AreSame(probabilityAssessmentOutput, output.ResultOutput.ProbabilityAssessmentOutput); Assert.AreSame(dikeHeightOutput, output.DikeHeightOutput); Assert.AreSame(overtoppingRateOutput, output.OvertoppingRateOutput); } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionOutwardsResultOutputTest.cs =================================================================== diff -u --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionOutwardsResultOutputTest.cs (revision 0) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionOutwardsResultOutputTest.cs (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -0,0 +1,54 @@ +// Copyright (C) Stichting Deltares 2017. 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.Common.Data.Probability; +using Ringtoets.Common.Data.TestUtil; + +namespace Ringtoets.GrassCoverErosionInwards.Data.Test +{ + [TestFixture] + public class GrassCoverErosionOutwardsResultOutputTest + { + [Test] + public void ParameteredConstructor_DefaultValues() + { + // Setup + const double waveHeight = 3.2934; + const double requiredProbability = 0.2; + const double requiredReliability = 0.3; + const double probability = 0.4; + const double reliability = 0.1; + const double factorOfSafety = 0.7; + + var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(requiredProbability, requiredReliability, probability, reliability, factorOfSafety); + // Call + var output = new GrassCoverErosionInwardsResultOutput(waveHeight, true, probabilityAssessmentOutput); + + // Assert + Assert.AreEqual(2, output.WaveHeight.NumberOfDecimalPlaces); + Assert.AreEqual(waveHeight, output.WaveHeight, output.WaveHeight.GetAccuracy()); + Assert.IsTrue(output.IsOvertoppingDominant); + + Assert.AreSame(probabilityAssessmentOutput, output.ProbabilityAssessmentOutput); + } + } +} \ No newline at end of file Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/Ringtoets.GrassCoverErosionInwards.Data.Test.csproj =================================================================== diff -u -r4340c49fb38ab7b56df8cb64b7f8adb144e640d7 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/Ringtoets.GrassCoverErosionInwards.Data.Test.csproj (.../Ringtoets.GrassCoverErosionInwards.Data.Test.csproj) (revision 4340c49fb38ab7b56df8cb64b7f8adb144e640d7) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/Ringtoets.GrassCoverErosionInwards.Data.Test.csproj (.../Ringtoets.GrassCoverErosionInwards.Data.Test.csproj) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -53,6 +53,7 @@ Properties\GlobalAssembly.cs + Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil.Test/TestGrassCoverErosionInwardsOutputTest.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil.Test/TestGrassCoverErosionInwardsOutputTest.cs (.../TestGrassCoverErosionInwardsOutputTest.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil.Test/TestGrassCoverErosionInwardsOutputTest.cs (.../TestGrassCoverErosionInwardsOutputTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -35,9 +35,9 @@ // Assert Assert.IsInstanceOf(output); - Assert.AreEqual(0.0, output.WaveHeight.Value); - Assert.IsTrue(output.IsOvertoppingDominant); - Assert.IsInstanceOf(output.ProbabilityAssessmentOutput); + Assert.AreEqual(0.0, output.ResultOutput.WaveHeight.Value); + Assert.IsTrue(output.ResultOutput.IsOvertoppingDominant); + Assert.IsInstanceOf(output.ResultOutput.ProbabilityAssessmentOutput); Assert.IsInstanceOf(output.DikeHeightOutput); Assert.IsInstanceOf(output.OvertoppingRateOutput); } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil/TestGrassCoverErosionInwardsOutput.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil/TestGrassCoverErosionInwardsOutput.cs (.../TestGrassCoverErosionInwardsOutput.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.TestUtil/TestGrassCoverErosionInwardsOutput.cs (.../TestGrassCoverErosionInwardsOutput.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -32,8 +32,9 @@ /// /// Creates a new instance of . /// - public TestGrassCoverErosionInwardsOutput() : base(0.0, true, - new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + public TestGrassCoverErosionInwardsOutput() : base(new GrassCoverErosionInwardsResultOutput( + 0.0, true, + new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) {} } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PropertyClasses/GrassCoverErosionInwardsOutputPropertiesTest.cs =================================================================== diff -u -r90ccab67b04e117a32943e14f0b1845083962eaf -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PropertyClasses/GrassCoverErosionInwardsOutputPropertiesTest.cs (.../GrassCoverErosionInwardsOutputPropertiesTest.cs) (revision 90ccab67b04e117a32943e14f0b1845083962eaf) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PropertyClasses/GrassCoverErosionInwardsOutputPropertiesTest.cs (.../GrassCoverErosionInwardsOutputPropertiesTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -90,6 +90,9 @@ probability, reliability, factorOfSafety); + var resultOutput = new GrassCoverErosionInwardsResultOutput(waveHeight, + isOvertoppingDominant, + probabilityAssessmentOutput); var dikeHeightOutput = new DikeHeightOutput(dikeHeight, dikeHeightTargetProbability, dikeHeightTargetReliability, @@ -102,7 +105,7 @@ overtoppingRateCalculatedProbability, overtoppingRateCalculatedReliability, overtoppingRateConvergence); - var output = new GrassCoverErosionInwardsOutput(waveHeight, isOvertoppingDominant, probabilityAssessmentOutput, dikeHeightOutput, overtoppingRateOutput); + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); // Call var properties = new GrassCoverErosionInwardsOutputProperties @@ -165,9 +168,13 @@ { // Setup var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(double.NaN, double.NaN, double.NaN, double.NaN, double.NaN); + var resultOutput = new GrassCoverErosionInwardsResultOutput(10, + true, + probabilityAssessmentOutput); var dikeHeightOutput = new TestDikeHeightOutput(double.NaN); var overtoppingRateOutput = new TestOvertoppingRateOutput(double.NaN); - var output = new GrassCoverErosionInwardsOutput(10, true, probabilityAssessmentOutput, + + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); @@ -197,6 +204,10 @@ DikeHeightOutput dikeHeightOutput = null; OvertoppingRateOutput overtoppingRateOutput = null; + var resultOutput = new GrassCoverErosionInwardsResultOutput(2, + true, + probabilityAssessmentOutput); + if (dikeHeightCalculated) { dikeHeightOutput = new TestDikeHeightOutput(double.NaN); @@ -207,7 +218,7 @@ overtoppingRateOutput = new TestOvertoppingRateOutput(double.NaN); } - var output = new GrassCoverErosionInwardsOutput(2, true, probabilityAssessmentOutput, + var output = new GrassCoverErosionInwardsOutput(resultOutput, dikeHeightOutput, overtoppingRateOutput); @@ -241,8 +252,12 @@ { // Setup var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(double.NaN, double.NaN, double.NaN, double.NaN, double.NaN); - var output = new GrassCoverErosionInwardsOutput(waveHeight, true, probabilityAssessmentOutput, null, null); + var resultOutput = new GrassCoverErosionInwardsResultOutput(waveHeight, + true, + probabilityAssessmentOutput); + var output = new GrassCoverErosionInwardsOutput(resultOutput, null, null); + // Call var properties = new GrassCoverErosionInwardsOutputProperties { Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismResultViewTest.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismResultViewTest.cs (.../GrassCoverErosionInwardsFailureMechanismResultViewTest.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismResultViewTest.cs (.../GrassCoverErosionInwardsFailureMechanismResultViewTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -344,9 +344,10 @@ using (GrassCoverErosionInwardsFailureMechanismResultView view = ShowFailureMechanismResultsView()) { var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(1.0, 1.0, double.NaN, 1.0, 1.0); + var resultOutput = new GrassCoverErosionInwardsResultOutput(1.0, false, probabilityAssessmentOutput); var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.0, false, probabilityAssessmentOutput, + Output = new GrassCoverErosionInwardsOutput(resultOutput, new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -386,9 +387,10 @@ { const double probability = 0.56789; var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(1.0, 1.0, probability, 1.0, 1.0); + var resultOutput = new GrassCoverErosionInwardsResultOutput(1.1, true, probabilityAssessmentOutput); var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.1, true, probabilityAssessmentOutput, + Output = new GrassCoverErosionInwardsOutput(resultOutput, new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -418,7 +420,7 @@ } [Test] - [TestCaseSource("AssessmentLayerOneStateIsSufficientVariousSectionResults")] + [TestCaseSource(nameof(AssessmentLayerOneStateIsSufficientVariousSectionResults))] public void GivenSectionResultAndAssessmentLayerOneStateSufficient_ThenLayerTwoANoError( GrassCoverErosionInwardsFailureMechanismSectionResult sectionResult, string expectedValue) { @@ -454,17 +456,19 @@ { const double probability = 0.56789; var successfulCalculationOutput = new ProbabilityAssessmentOutput(1.0, 1.0, probability, 1.0, 1.0); + var successfulResultOutput = new GrassCoverErosionInwardsResultOutput(1.1, true, successfulCalculationOutput); var successfulCalculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.1, true, successfulCalculationOutput, + Output = new GrassCoverErosionInwardsOutput(successfulResultOutput, new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; var failedCalculationOutput = new ProbabilityAssessmentOutput(1.0, 1.0, double.NaN, 1.0, 1.0); + var failedResultOutput = new GrassCoverErosionInwardsResultOutput(1.1, true, failedCalculationOutput); var failedCalculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.1, true, failedCalculationOutput, + Output = new GrassCoverErosionInwardsOutput(failedResultOutput, new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -519,8 +523,9 @@ AssessmentLayerOne = AssessmentLayerOneState.Sufficient, Calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.1, true, - new ProbabilityAssessmentOutput(1.0, 1.0, double.NaN, 1.0, 1.0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1.1, true, + new ProbabilityAssessmentOutput(1.0, 1.0, double.NaN, 1.0, 1.0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) } @@ -530,8 +535,9 @@ AssessmentLayerOne = AssessmentLayerOneState.Sufficient, Calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(1.1, true, - new ProbabilityAssessmentOutput(1.0, 1.0, probability, 1.0, 1.0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1.1, true, + new ProbabilityAssessmentOutput(1.0, 1.0, probability, 1.0, 1.0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) } Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismSectionResultRowTest.cs =================================================================== diff -u -raeb6e1a439617630e7613b9ed5af152c345fa2c6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismSectionResultRowTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultRowTest.cs) (revision aeb6e1a439617630e7613b9ed5af152c345fa2c6) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/Views/GrassCoverErosionInwardsFailureMechanismSectionResultRowTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultRowTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -82,7 +82,8 @@ if (status == CalculationScenarioStatus.Failed) { var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(0.9, 1.0, double.NaN, 1.0, 1.0); - calculation.Output = new GrassCoverErosionInwardsOutput(1.1, false, probabilityAssessmentOutput, + calculation.Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 1.1, false, probabilityAssessmentOutput), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)); } @@ -109,7 +110,8 @@ var probabilityAssessmentOutput = new ProbabilityAssessmentOutput(0.9, 1.0, 0.95, 1.0, 1.0); var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0.5, true, probabilityAssessmentOutput, + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0.5, true, probabilityAssessmentOutput), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -126,7 +128,7 @@ double assessmentLayerTwoA = resultRow.AssessmentLayerTwoA; // Assert - Assert.AreEqual(calculation.Output.ProbabilityAssessmentOutput.Probability, assessmentLayerTwoA); + Assert.AreEqual(calculation.Output.ResultOutput.ProbabilityAssessmentOutput.Probability, assessmentLayerTwoA); } [Test] Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Integration.Test/GrassCoverErosionInwardsCalculationActivityIntegrationTest.cs =================================================================== diff -u -ra1d8b4b58632ae45df9bde7fe7eaa69f3864507a -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Integration.Test/GrassCoverErosionInwardsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionInwardsCalculationActivityIntegrationTest.cs) (revision a1d8b4b58632ae45df9bde7fe7eaa69f3864507a) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Integration.Test/GrassCoverErosionInwardsCalculationActivityIntegrationTest.cs (.../GrassCoverErosionInwardsCalculationActivityIntegrationTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -482,7 +482,7 @@ // Assert Assert.IsNotNull(calculation.Output); - Assert.IsFalse(double.IsNaN(calculation.Output.ProbabilityAssessmentOutput.Reliability)); + Assert.IsFalse(double.IsNaN(calculation.Output.ResultOutput.ProbabilityAssessmentOutput.Reliability)); Assert.IsNull(calculation.Output.DikeHeightOutput); Assert.IsNull(calculation.Output.OvertoppingRateOutput); mockRepository.VerifyAll(); @@ -912,7 +912,7 @@ // Assert Assert.IsNotNull(calculation.Output); - ProbabilityAssessmentOutput probabilisticAssessmentOutput = calculation.Output.ProbabilityAssessmentOutput; + ProbabilityAssessmentOutput probabilisticAssessmentOutput = calculation.Output.ResultOutput.ProbabilityAssessmentOutput; Assert.IsFalse(double.IsNaN(probabilisticAssessmentOutput.Reliability)); DikeHeightOutput dikeHeightOutput = calculation.Output.DikeHeightOutput; Assert.IsNotNull(dikeHeightOutput); @@ -1343,7 +1343,7 @@ // Assert Assert.IsNotNull(calculation.Output); - ProbabilityAssessmentOutput probabilisticAssessmentOutput = calculation.Output.ProbabilityAssessmentOutput; + ProbabilityAssessmentOutput probabilisticAssessmentOutput = calculation.Output.ResultOutput.ProbabilityAssessmentOutput; Assert.IsFalse(double.IsNaN(probabilisticAssessmentOutput.Reliability)); OvertoppingRateOutput overtoppingRateOutput = calculation.Output.OvertoppingRateOutput; Assert.IsNotNull(overtoppingRateOutput); Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Plugin.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs =================================================================== diff -u -r9779d1ab6b555c557e8fd18f4430ad207bd003da -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Plugin.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs) (revision 9779d1ab6b555c557e8fd18f4430ad207bd003da) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Plugin.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -157,7 +157,8 @@ var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, true, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, true, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0.0), new TestOvertoppingRateOutput(0)) }; @@ -873,8 +874,9 @@ }; assessmentSection.Stub(a => a.FailureMechanismContribution).Return(new FailureMechanismContribution(Enumerable.Empty(), 1, 1)); - var initialOutput = new GrassCoverErosionInwardsOutput(0, true, - new ProbabilityAssessmentOutput(double.NaN, double.NaN, double.NaN, double.NaN, double.NaN), + var initialOutput = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, true, + new ProbabilityAssessmentOutput(double.NaN, double.NaN, double.NaN, double.NaN, double.NaN)), new TestDikeHeightOutput(double.NaN), new TestOvertoppingRateOutput(double.NaN)); var calculation = new GrassCoverErosionInwardsCalculation Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Service.Test/GrassCoverErosionInwardsCalculationServiceTest.cs =================================================================== diff -u -r96a6ad152dc45508f0501e489c29611244e9d76c -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Service.Test/GrassCoverErosionInwardsCalculationServiceTest.cs (.../GrassCoverErosionInwardsCalculationServiceTest.cs) (revision 96a6ad152dc45508f0501e489c29611244e9d76c) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Service.Test/GrassCoverErosionInwardsCalculationServiceTest.cs (.../GrassCoverErosionInwardsCalculationServiceTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -547,15 +547,15 @@ } // Assert - Assert.IsFalse(double.IsNaN(calculation.Output.WaveHeight)); - ProbabilityAssessmentOutput probabilityAssessmentOutput = calculation.Output.ProbabilityAssessmentOutput; + Assert.IsFalse(double.IsNaN(calculation.Output.ResultOutput.WaveHeight)); + ProbabilityAssessmentOutput probabilityAssessmentOutput = calculation.Output.ResultOutput.ProbabilityAssessmentOutput; Assert.IsNotNull(probabilityAssessmentOutput); Assert.IsFalse(double.IsNaN(probabilityAssessmentOutput.FactorOfSafety)); Assert.IsFalse(double.IsNaN(probabilityAssessmentOutput.Probability)); Assert.IsFalse(double.IsNaN(probabilityAssessmentOutput.Reliability)); Assert.IsFalse(double.IsNaN(probabilityAssessmentOutput.RequiredProbability)); Assert.IsFalse(double.IsNaN(probabilityAssessmentOutput.RequiredReliability)); - Assert.IsFalse(calculation.Output.IsOvertoppingDominant); + Assert.IsFalse(calculation.Output.ResultOutput.IsOvertoppingDominant); if (dikeHeightCalculationType != DikeHeightCalculationType.NoCalculation) { Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Utils.Test/GrassCoverErosionInwardsDataSynchronizationServiceTest.cs =================================================================== diff -u -r6d3a034f41b0db321d53b5a4c7b6e1b77b257081 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Utils.Test/GrassCoverErosionInwardsDataSynchronizationServiceTest.cs (.../GrassCoverErosionInwardsDataSynchronizationServiceTest.cs) (revision 6d3a034f41b0db321d53b5a4c7b6e1b77b257081) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Utils.Test/GrassCoverErosionInwardsDataSynchronizationServiceTest.cs (.../GrassCoverErosionInwardsDataSynchronizationServiceTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -58,7 +58,8 @@ // Setup var calculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -571,7 +572,8 @@ var calculation = new GrassCoverErosionInwardsCalculation(); var calculationWithOutput = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -581,7 +583,8 @@ { HydraulicBoundaryLocation = hydraulicBoundaryLocation }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -620,7 +623,8 @@ var subCalculation = new GrassCoverErosionInwardsCalculation(); var subCalculationWithOutput = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -630,7 +634,8 @@ { HydraulicBoundaryLocation = hydraulicBoundaryLocation }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/PropertyClasses/FailureMechanismContributionPropertiesIntegrationTest.cs =================================================================== diff -u -rc768a8e136e2b79c51c5892d3c45be268c5496d6 -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/PropertyClasses/FailureMechanismContributionPropertiesIntegrationTest.cs (.../FailureMechanismContributionPropertiesIntegrationTest.cs) (revision c768a8e136e2b79c51c5892d3c45be268c5496d6) +++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/PropertyClasses/FailureMechanismContributionPropertiesIntegrationTest.cs (.../FailureMechanismContributionPropertiesIntegrationTest.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -83,7 +83,8 @@ var emptyGrassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation(); var grassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -290,7 +291,8 @@ var emptyGrassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation(); var grassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; @@ -394,7 +396,8 @@ var emptyGrassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation(); var grassCoverErosionInwardsCalculation = new GrassCoverErosionInwardsCalculation { - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput( + 0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new TestDikeHeightOutput(0), new TestOvertoppingRateOutput(0)) }; Index: Ringtoets/Integration/test/Ringtoets.Integration.TestUtils/TestDataGenerator.cs =================================================================== diff -u -r8bb6e849266ec28412ebfe23beccd7235c4db9bf -rcb9ea4ad53b55626245ff8399d7cf0905185e632 --- Ringtoets/Integration/test/Ringtoets.Integration.TestUtils/TestDataGenerator.cs (.../TestDataGenerator.cs) (revision 8bb6e849266ec28412ebfe23beccd7235c4db9bf) +++ Ringtoets/Integration/test/Ringtoets.Integration.TestUtils/TestDataGenerator.cs (.../TestDataGenerator.cs) (revision cb9ea4ad53b55626245ff8399d7cf0905185e632) @@ -322,7 +322,7 @@ HydraulicBoundaryLocation = hydraulicBoundaryLocation, DikeProfile = dikeprofile1 }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new DikeHeightOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged), new OvertoppingRateOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged)) }; @@ -332,7 +332,7 @@ { HydraulicBoundaryLocation = hydraulicBoundaryLocation }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new DikeHeightOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged), new OvertoppingRateOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged)) }; @@ -360,7 +360,7 @@ HydraulicBoundaryLocation = hydraulicBoundaryLocation, DikeProfile = dikeprofile2 }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new DikeHeightOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged), new OvertoppingRateOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged)) }; @@ -370,7 +370,7 @@ { HydraulicBoundaryLocation = hydraulicBoundaryLocation }, - Output = new GrassCoverErosionInwardsOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0), + Output = new GrassCoverErosionInwardsOutput(new GrassCoverErosionInwardsResultOutput(0, false, new ProbabilityAssessmentOutput(0, 0, 0, 0, 0)), new DikeHeightOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged), new OvertoppingRateOutput(0, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged)) };