Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingInput.cs
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingInput.cs (.../PipingInput.cs) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingInput.cs (.../PipingInput.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -173,10 +173,21 @@
private void UpdateStochasticSoilProfile()
{
- if (stochasticSoilModel == null || !stochasticSoilModel.StochasticSoilProfiles.Contains(StochasticSoilProfile))
+ if (stochasticSoilModel == null)
{
StochasticSoilProfile = null;
+ return;
}
+ if (stochasticSoilModel.StochasticSoilProfiles.Contains(StochasticSoilProfile))
+ {
+ return;
+ }
+ if (stochasticSoilModel.StochasticSoilProfiles.Count == 1)
+ {
+ StochasticSoilProfile = stochasticSoilModel.StochasticSoilProfiles.First();
+ return;
+ }
+ StochasticSoilProfile = null;
}
private void UpdateEntryAndExitPoint()
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs (.../PipingContext.cs) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs (.../PipingContext.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -23,7 +23,6 @@
using System.Collections.Generic;
using System.Linq;
using Core.Common.Base;
-using Ringtoets.Common.Data;
using Ringtoets.Common.Data.AssessmentSection;
using Ringtoets.HydraRing.Data;
using Ringtoets.Piping.Data;
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -1049,7 +1049,7 @@
}
///
- /// Looks up a localized string similar to Het Stochastisch ondergrondmodel dat voor de piping berekening gebruikt wordt..
+ /// Looks up a localized string similar to Het stochastisch ondergrondmodel dat voor de piping berekening gebruikt wordt..
///
public static string PipingInput_StochasticSoilModel_Description {
get {
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -728,6 +728,6 @@
Stochastisch ondergrondmodel
- Het Stochastisch ondergrondmodel dat voor de piping berekening gebruikt wordt.
+ Het stochastisch ondergrondmodel dat voor de piping berekening gebruikt wordt.
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingInputContextProperties.cs
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingInputContextProperties.cs (.../PipingInputContextProperties.cs) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/PipingInputContextProperties.cs (.../PipingInputContextProperties.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -171,6 +171,7 @@
if (!ReferenceEquals(value, data.WrappedData.SurfaceLine))
{
data.WrappedData.SurfaceLine = value;
+ data.WrappedData.StochasticSoilModel = null;
data.WrappedData.StochasticSoilProfile = null;
data.WrappedData.NotifyObservers();
}
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingInputTest.cs
===================================================================
diff -u -r8832cfacbfb0a999d9dd5ddcb93fd81bdb2fb09f -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingInputTest.cs (.../PipingInputTest.cs) (revision 8832cfacbfb0a999d9dd5ddcb93fd81bdb2fb09f)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingInputTest.cs (.../PipingInputTest.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -84,6 +84,7 @@
Assert.AreEqual(3, inputParameters.DarcyPermeability.StandardDeviation.NumberOfDecimalPlaces);
Assert.IsNull(inputParameters.SurfaceLine);
+ Assert.IsNull(inputParameters.StochasticSoilModel);
Assert.IsNull(inputParameters.StochasticSoilProfile);
Assert.IsNull(inputParameters.HydraulicBoundaryLocation);
@@ -148,6 +149,48 @@
}
[Test]
+ public void StochasticSoilModel_NewStochasticSoilModelWithOneStochasticSoilProfile_SetsStochasticSoilProfile()
+ {
+ // Setup
+ var pipingInput = new PipingInput(new GeneralPipingInput());
+ StochasticSoilModel stochasticSoilModel = new StochasticSoilModel(0, "StochasticSoilModelName", "StochasticSoilModelSegmentName");
+ StochasticSoilProfile stochasticSoilProfile = new StochasticSoilProfile(1.1, SoilProfileType.SoilProfile1D, 0);
+ stochasticSoilModel.StochasticSoilProfiles.Add(stochasticSoilProfile);
+
+ // Call
+ pipingInput.StochasticSoilModel = stochasticSoilModel;
+
+ // Assert
+ Assert.AreEqual(stochasticSoilProfile, pipingInput.StochasticSoilProfile);
+ Assert.AreEqual(stochasticSoilModel, pipingInput.StochasticSoilModel);
+ }
+
+ [Test]
+ public void StochasticSoilModel_NewStochasticSoilModelWithMultipleStochasticSoilProfile_SetsStochasticSoilProfileToNull()
+ {
+ // Setup
+ var pipingInput = new PipingInput(new GeneralPipingInput());
+
+ StochasticSoilModel stochasticSoilModel = new StochasticSoilModel(0, "StochasticSoilModelName", "StochasticSoilModelSegmentName");
+ StochasticSoilProfile stochasticSoilProfile = new StochasticSoilProfile(1.1, SoilProfileType.SoilProfile1D, 0);
+ stochasticSoilModel.StochasticSoilProfiles.Add(stochasticSoilProfile);
+
+ StochasticSoilModel stochasticSoilModelWithMiltipleProfiles = new StochasticSoilModel(0, "StochasticSoilModelName", "StochasticSoilModelSegmentName");
+ stochasticSoilModelWithMiltipleProfiles.StochasticSoilProfiles.Add(new StochasticSoilProfile(1.1, SoilProfileType.SoilProfile1D, 1));
+ stochasticSoilModelWithMiltipleProfiles.StochasticSoilProfiles.Add(new StochasticSoilProfile(2.2, SoilProfileType.SoilProfile1D, 2));
+
+ // Precondition
+ pipingInput.StochasticSoilModel = stochasticSoilModel;
+ Assert.AreEqual(stochasticSoilProfile, pipingInput.StochasticSoilProfile);
+
+ // Call
+ pipingInput.StochasticSoilModel = stochasticSoilModelWithMiltipleProfiles;
+
+ // Assert
+ Assert.IsNull(pipingInput.StochasticSoilProfile);
+ }
+
+ [Test]
public void ExitPointL_SetToValueWithTooManyDecimalPlaces_ValueIsRounded()
{
// Setup
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingInputContextPropertiesTest.cs
===================================================================
diff -u -rcda9bb0707f49cfb8e685d3ec04da01240c73f26 -r0faea705e7f83205f8420c52edda8a5473485bcd
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingInputContextPropertiesTest.cs (.../PipingInputContextPropertiesTest.cs) (revision cda9bb0707f49cfb8e685d3ec04da01240c73f26)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PropertyClasses/PipingInputContextPropertiesTest.cs (.../PipingInputContextPropertiesTest.cs) (revision 0faea705e7f83205f8420c52edda8a5473485bcd)
@@ -28,7 +28,6 @@
using Core.Common.Gui.PropertyBag;
using NUnit.Framework;
using Rhino.Mocks;
-using Ringtoets.Common.Data;
using Ringtoets.Common.Data.AssessmentSection;
using Ringtoets.HydraRing.Data;
using Ringtoets.Piping.Data;
@@ -163,7 +162,7 @@
var mocks = new MockRepository();
var assessmentSectionMock = mocks.StrictMock();
var projectObserver = mocks.StrictMock();
- int numberProperties = 9;
+ int numberProperties = 8;
projectObserver.Expect(o => o.UpdateObserver()).Repeat.Times(numberProperties);
mocks.ReplayAll();