Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfiguration.cs =================================================================== diff -u -rdf9884404c97d372920845e8566c029b63af0eb5 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfiguration.cs (.../MacroStabilityInwardsCalculationConfiguration.cs) (revision df9884404c97d372920845e8566c029b63af0eb5) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfiguration.cs (.../MacroStabilityInwardsCalculationConfiguration.cs) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -72,6 +72,11 @@ public ScenarioConfiguration Scenario { get; set; } /// + /// Gets or sets the dike soil scenario of the calculation. + /// + public ConfigurationDikeSoilScenario? DikeSoilScenario { get; set; } + + /// /// Gets or sets the name for the calculation. /// /// Thrown when is null. Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs =================================================================== diff -u -rdf9884404c97d372920845e8566c029b63af0eb5 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs (.../MacroStabilityInwardsCalculationConfigurationExporter.cs) (revision df9884404c97d372920845e8566c029b63af0eb5) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs (.../MacroStabilityInwardsCalculationConfigurationExporter.cs) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -25,6 +25,8 @@ using Ringtoets.Common.IO.Configurations.Export; using Ringtoets.Common.IO.Configurations.Helpers; using Ringtoets.MacroStabilityInwards.Data; +using Ringtoets.MacroStabilityInwards.IO.Configurations.Helpers; +using Ringtoets.MacroStabilityInwards.Primitives; namespace Ringtoets.MacroStabilityInwards.IO.Configurations { @@ -56,7 +58,10 @@ { MacroStabilityInwardsInput input = calculation.InputParameters; - var calculationConfiguration = new MacroStabilityInwardsCalculationConfiguration(calculation.Name); + var calculationConfiguration = new MacroStabilityInwardsCalculationConfiguration(calculation.Name) + { + Scenario = calculation.ToScenarioConfiguration() + }; if (input.HydraulicBoundaryLocation != null) { @@ -78,7 +83,11 @@ calculationConfiguration.StochasticSoilProfileName = input.StochasticSoilProfile?.SoilProfile.Name; } - calculationConfiguration.Scenario = calculation.ToScenarioConfiguration(); + if (Enum.IsDefined(typeof(MacroStabilityInwardsDikeSoilScenario), input.DikeSoilScenario)) + { + calculationConfiguration.DikeSoilScenario = (ConfigurationDikeSoilScenario?) + new ConfigurationDikeSoilScenarioTypeConverter().ConvertFrom(input.DikeSoilScenario); + } return calculationConfiguration; } Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationWriter.cs =================================================================== diff -u -rdf9884404c97d372920845e8566c029b63af0eb5 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationWriter.cs (.../MacroStabilityInwardsCalculationConfigurationWriter.cs) (revision df9884404c97d372920845e8566c029b63af0eb5) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationWriter.cs (.../MacroStabilityInwardsCalculationConfigurationWriter.cs) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -23,6 +23,7 @@ using System.Xml; using Ringtoets.Common.IO.Configurations; using Ringtoets.Common.IO.Configurations.Export; +using Ringtoets.MacroStabilityInwards.IO.Configurations.Helpers; namespace Ringtoets.MacroStabilityInwards.IO.Configurations { @@ -80,7 +81,36 @@ MacroStabilityInwardsCalculationConfigurationSchemaIdentifiers.StochasticSoilProfileElement, configuration.StochasticSoilProfileName); + WriteDikeSoilScenarioWhenAvailable( + writer, + MacroStabilityInwardsCalculationConfigurationSchemaIdentifiers.DikeSoilScenarioElement, + configuration.DikeSoilScenario); + WriteScenarioWhenAvailable(writer, configuration.Scenario); } + + /// + /// Writes the in XML format to file. + /// + /// The writer to use for writing. + /// The XML element name. + /// The dike soil scenario to write. + /// Thrown when the + /// is closed. + /// Thrown when the conversion of + /// cannot be performed. + private static void WriteDikeSoilScenarioWhenAvailable(XmlWriter writer, + string elementName, + ConfigurationDikeSoilScenario? dikeSoilScenario) + { + if (!dikeSoilScenario.HasValue) + { + return; + } + + var typeConverter = new ConfigurationDikeSoilScenarioTypeConverter(); + writer.WriteElementString(elementName, + typeConverter.ConvertToInvariantString(dikeSoilScenario.Value)); + } } } \ No newline at end of file Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationTest.cs =================================================================== diff -u -rd182eff9a28f7a938d34e12be2ab9e1cd6c92e35 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationTest.cs (.../MacroStabilityInwardsCalculationConfigurationTest.cs) (revision d182eff9a28f7a938d34e12be2ab9e1cd6c92e35) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationTest.cs (.../MacroStabilityInwardsCalculationConfigurationTest.cs) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -46,17 +46,18 @@ const string name = "some name"; // Call - var readCalculation = new MacroStabilityInwardsCalculationConfiguration(name); + var configuration = new MacroStabilityInwardsCalculationConfiguration(name); // Assert - Assert.IsInstanceOf(readCalculation); - Assert.AreEqual(name, readCalculation.Name); - Assert.IsNull(readCalculation.AssessmentLevel); - Assert.IsNull(readCalculation.HydraulicBoundaryLocationName); - Assert.IsNull(readCalculation.SurfaceLineName); - Assert.IsNull(readCalculation.StochasticSoilModelName); - Assert.IsNull(readCalculation.StochasticSoilProfileName); - Assert.IsNull(readCalculation.Scenario); + Assert.IsInstanceOf(configuration); + Assert.AreEqual(name, configuration.Name); + Assert.IsNull(configuration.AssessmentLevel); + Assert.IsNull(configuration.HydraulicBoundaryLocationName); + Assert.IsNull(configuration.SurfaceLineName); + Assert.IsNull(configuration.StochasticSoilModelName); + Assert.IsNull(configuration.StochasticSoilProfileName); + Assert.IsNull(configuration.Scenario); + Assert.IsNull(configuration.DikeSoilScenario); } [Test] @@ -69,28 +70,31 @@ const string surfaceLine = "Name of the surface line"; const string stochasticSoilModel = "Name of the stochastic soil model"; const string stochasticSoilProfile = "Name of the stochastic soil profile"; + const ConfigurationDikeSoilScenario dikeSoilScenario = ConfigurationDikeSoilScenario.SandDikeOnSand; var scenarioConfiguration = new ScenarioConfiguration(); // Call - var readCalculation = new MacroStabilityInwardsCalculationConfiguration(calculationName) + var configuration = new MacroStabilityInwardsCalculationConfiguration(calculationName) { AssessmentLevel = assessmentLevel, HydraulicBoundaryLocationName = hydraulicBoundaryLocation, SurfaceLineName = surfaceLine, StochasticSoilModelName = stochasticSoilModel, StochasticSoilProfileName = stochasticSoilProfile, - Scenario = scenarioConfiguration + Scenario = scenarioConfiguration, + DikeSoilScenario = dikeSoilScenario }; // Assert - Assert.AreEqual(calculationName, readCalculation.Name); - Assert.AreEqual(assessmentLevel, readCalculation.AssessmentLevel); - Assert.AreEqual(hydraulicBoundaryLocation, readCalculation.HydraulicBoundaryLocationName); - Assert.AreEqual(surfaceLine, readCalculation.SurfaceLineName); - Assert.AreEqual(stochasticSoilModel, readCalculation.StochasticSoilModelName); - Assert.AreEqual(stochasticSoilProfile, readCalculation.StochasticSoilProfileName); - Assert.AreSame(scenarioConfiguration, readCalculation.Scenario); + Assert.AreEqual(calculationName, configuration.Name); + Assert.AreEqual(assessmentLevel, configuration.AssessmentLevel); + Assert.AreEqual(hydraulicBoundaryLocation, configuration.HydraulicBoundaryLocationName); + Assert.AreEqual(surfaceLine, configuration.SurfaceLineName); + Assert.AreEqual(stochasticSoilModel, configuration.StochasticSoilModelName); + Assert.AreEqual(stochasticSoilProfile, configuration.StochasticSoilProfileName); + Assert.AreSame(scenarioConfiguration, configuration.Scenario); + Assert.AreEqual(dikeSoilScenario, configuration.DikeSoilScenario); } [Test] Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationWriterTest.cs =================================================================== diff -u -re2f42854a939d728633cbe8933604f28c40b4f85 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationWriterTest.cs (.../MacroStabilityInwardsCalculationConfigurationWriterTest.cs) (revision e2f42854a939d728633cbe8933604f28c40b4f85) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/Configurations/MacroStabilityInwardsCalculationConfigurationWriterTest.cs (.../MacroStabilityInwardsCalculationConfigurationWriterTest.cs) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -89,7 +89,8 @@ { IsRelevant = true, Contribution = 0.3 - } + }, + DikeSoilScenario = ConfigurationDikeSoilScenario.ClayDikeOnSand }; } Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationIrrelevant.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationIrrelevant.xml (.../calculationIrrelevant.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationIrrelevant.xml (.../calculationIrrelevant.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -5,6 +5,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A false 50 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithAssessmentLevel.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithAssessmentLevel.xml (.../calculationWithAssessmentLevel.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithAssessmentLevel.xml (.../calculationWithAssessmentLevel.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -5,6 +5,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithInfinities.xml =================================================================== diff -u -rdf9884404c97d372920845e8566c029b63af0eb5 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithInfinities.xml (.../calculationWithInfinities.xml) (revision df9884404c97d372920845e8566c029b63af0eb5) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithInfinities.xml (.../calculationWithInfinities.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -5,6 +5,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true INF Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithNaNs.xml =================================================================== diff -u -rdf9884404c97d372920845e8566c029b63af0eb5 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithNaNs.xml (.../calculationWithNaNs.xml) (revision df9884404c97d372920845e8566c029b63af0eb5) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithNaNs.xml (.../calculationWithNaNs.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -5,6 +5,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true NaN Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutHydraulicLocation.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutHydraulicLocation.xml (.../calculationWithoutHydraulicLocation.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutHydraulicLocation.xml (.../calculationWithoutHydraulicLocation.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -4,6 +4,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilProfile.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilProfile.xml (.../calculationWithoutSoilProfile.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilProfile.xml (.../calculationWithoutSoilProfile.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -4,6 +4,7 @@ PUNT_KAT_18 PK001_0001 PK001_0001_Macrostabiliteit + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilmodel.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilmodel.xml (.../calculationWithoutSoilmodel.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSoilmodel.xml (.../calculationWithoutSoilmodel.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -3,6 +3,7 @@ PUNT_KAT_18 PK001_0001 + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSurfaceline.xml =================================================================== diff -u -r61023d4655650fe5bf79f1ff5186094c94327c1b -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSurfaceline.xml (.../calculationWithoutSurfaceline.xml) (revision 61023d4655650fe5bf79f1ff5186094c94327c1b) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/calculationWithoutSurfaceline.xml (.../calculationWithoutSurfaceline.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -4,6 +4,7 @@ PUNT_KAT_18 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/folderWithSubfolderAndCalculation.xml =================================================================== diff -u -r4ddc97c611cbba2e7a3445838c3b8df6ebf60bd2 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/folderWithSubfolderAndCalculation.xml (.../folderWithSubfolderAndCalculation.xml) (revision 4ddc97c611cbba2e7a3445838c3b8df6ebf60bd2) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationExporter/folderWithSubfolderAndCalculation.xml (.../folderWithSubfolderAndCalculation.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -6,6 +6,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true 100 @@ -17,6 +18,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1A true 100 Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationWriter/folderWithSubfolderAndCalculation.xml =================================================================== diff -u -rd182eff9a28f7a938d34e12be2ab9e1cd6c92e35 -r3ae01b9a2288d1586c3ad911e9128b4561b1fcf2 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationWriter/folderWithSubfolderAndCalculation.xml (.../folderWithSubfolderAndCalculation.xml) (revision d182eff9a28f7a938d34e12be2ab9e1cd6c92e35) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.IO.Test/test-data/MacroStabilityInwardsCalculationConfigurationWriter/folderWithSubfolderAndCalculation.xml (.../folderWithSubfolderAndCalculation.xml) (revision 3ae01b9a2288d1586c3ad911e9128b4561b1fcf2) @@ -7,6 +7,7 @@ PK001_0001 PK001_0001_Macrostabiliteit W1-6_0_1D1 + 1B true 0.3