Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Calculators/UpliftVan/UpliftVanCalculator.cs =================================================================== diff -u -r197f5481b023a6f8609cf81bb5f7b6a205ea3439 -r6139d8deb7b8f83cd06a4534f04ed18ecbada3b6 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Calculators/UpliftVan/UpliftVanCalculator.cs (.../UpliftVanCalculator.cs) (revision 197f5481b023a6f8609cf81bb5f7b6a205ea3439) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Calculators/UpliftVan/UpliftVanCalculator.cs (.../UpliftVanCalculator.cs) (revision 6139d8deb7b8f83cd06a4534f04ed18ecbada3b6) @@ -117,7 +117,7 @@ upliftVanKernel.SoilModel = SoilModelCreator.Create(soils); upliftVanKernel.SoilProfile = SoilProfileCreator.Create(input.SoilProfile, layersWithSoils); upliftVanKernel.Location = StabilityLocationCreator.Create(input); - upliftVanKernel.SurfaceLine = SurfaceLineCreator.Create(input.SurfaceLine); + upliftVanKernel.SurfaceLine = SurfaceLineCreator.Create(input.SurfaceLine, input.LandwardDirection); upliftVanKernel.SlipPlaneUpliftVan = SlipPlaneUpliftVanCreator.Create(input.SlipPlane); upliftVanKernel.GridAutomaticDetermined = input.SlipPlane.GridAutomaticDetermined; upliftVanKernel.CreateZones = input.CreateZones; Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Creators/Input/SurfaceLineCreator.cs =================================================================== diff -u -r5384132a6cf39e2cc34d3eeac2becaefa2a349f1 -r6139d8deb7b8f83cd06a4534f04ed18ecbada3b6 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Creators/Input/SurfaceLineCreator.cs (.../SurfaceLineCreator.cs) (revision 5384132a6cf39e2cc34d3eeac2becaefa2a349f1) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.KernelWrapper/Creators/Input/SurfaceLineCreator.cs (.../SurfaceLineCreator.cs) (revision 6139d8deb7b8f83cd06a4534f04ed18ecbada3b6) @@ -21,9 +21,11 @@ using System; using System.Collections.Generic; +using System.ComponentModel; using System.Linq; using Core.Common.Base.Geometry; using Deltares.WTIStability.Data.Geo; +using Ringtoets.MacroStabilityInwards.KernelWrapper.Calculators.UpliftVan.Input; using Ringtoets.MacroStabilityInwards.KernelWrapper.Kernels.UpliftVan; using Ringtoets.MacroStabilityInwards.Primitives; @@ -40,9 +42,14 @@ /// /// The from /// which to take the information. + /// The landward direction of the surface line. /// A new with information taken from the . /// Thrown when is null. - public static SurfaceLine2 Create(MacroStabilityInwardsSurfaceLine surfaceLine) + /// Thrown when + /// is an invalid value. + /// Thrown when + /// is a valid value but unsupported. + public static SurfaceLine2 Create(MacroStabilityInwardsSurfaceLine surfaceLine, UpliftVanLandwardDirection landwardDirection) { if (surfaceLine == null) { @@ -52,7 +59,7 @@ var wtiSurfaceLine = new SurfaceLine2 { Name = surfaceLine.Name, - LandwardDirection = LandwardDirection.PositiveX + LandwardDirection = ConvertLandwardDirection(landwardDirection) }; if (surfaceLine.Points.Any()) @@ -72,6 +79,35 @@ return wtiSurfaceLine; } + /// + /// Converts a into a . + /// + /// The to convert. + /// A based on . + /// Thrown when + /// is an invalid value. + /// Thrown when + /// is a valid value but unsupported. + private static LandwardDirection ConvertLandwardDirection(UpliftVanLandwardDirection landwardDirection) + { + if (!Enum.IsDefined(typeof(UpliftVanLandwardDirection), landwardDirection)) + { + throw new InvalidEnumArgumentException(nameof(landwardDirection), + (int) landwardDirection, + typeof(UpliftVanLandwardDirection)); + } + + switch (landwardDirection) + { + case UpliftVanLandwardDirection.PositiveX: + return LandwardDirection.PositiveX; + case UpliftVanLandwardDirection.NegativeX: + return LandwardDirection.NegativeX; + default: + throw new NotSupportedException(); + } + } + private static IEnumerable CreateCharacteristicPoints(MacroStabilityInwardsSurfaceLine surfaceLine, GeometryPoint[] geometryPoints) { var characteristicPoints = new List(); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Calculators/UpliftVan/UpliftVanCalculatorTest.cs =================================================================== diff -u -r197f5481b023a6f8609cf81bb5f7b6a205ea3439 -r6139d8deb7b8f83cd06a4534f04ed18ecbada3b6 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Calculators/UpliftVan/UpliftVanCalculatorTest.cs (.../UpliftVanCalculatorTest.cs) (revision 197f5481b023a6f8609cf81bb5f7b6a205ea3439) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Calculators/UpliftVan/UpliftVanCalculatorTest.cs (.../UpliftVanCalculatorTest.cs) (revision 6139d8deb7b8f83cd06a4534f04ed18ecbada3b6) @@ -140,7 +140,7 @@ UpliftVanKernelInputAssert.AssertSoilModels(SoilModelCreator.Create(soils), upliftVanKernel.SoilModel); UpliftVanKernelInputAssert.AssertSoilProfiles(SoilProfileCreator.Create(input.SoilProfile, layersWithSoils), upliftVanKernel.SoilProfile); UpliftVanKernelInputAssert.AssertStabilityLocations(StabilityLocationCreator.Create(input), upliftVanKernel.Location); - UpliftVanKernelInputAssert.AssertSurfaceLines(SurfaceLineCreator.Create(input.SurfaceLine), upliftVanKernel.SurfaceLine); + UpliftVanKernelInputAssert.AssertSurfaceLines(SurfaceLineCreator.Create(input.SurfaceLine, input.LandwardDirection), upliftVanKernel.SurfaceLine); UpliftVanKernelInputAssert.AssertSlipPlanesUpliftVan(SlipPlaneUpliftVanCreator.Create(input.SlipPlane), upliftVanKernel.SlipPlaneUpliftVan); Assert.AreEqual(input.SlipPlane.GridAutomaticDetermined, upliftVanKernel.GridAutomaticDetermined); @@ -192,7 +192,7 @@ // Assert var exception = Assert.Throws(test); Assert.IsInstanceOf(exception.InnerException); - Assert.AreEqual(exception.InnerException.Message, exception.Message); + Assert.AreEqual(exception.InnerException.Message, exception.Message); } [Test] Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Creators/Input/SurfaceLineCreatorTest.cs =================================================================== diff -u -r5384132a6cf39e2cc34d3eeac2becaefa2a349f1 -r6139d8deb7b8f83cd06a4534f04ed18ecbada3b6 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Creators/Input/SurfaceLineCreatorTest.cs (.../SurfaceLineCreatorTest.cs) (revision 5384132a6cf39e2cc34d3eeac2becaefa2a349f1) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.Test/Creators/Input/SurfaceLineCreatorTest.cs (.../SurfaceLineCreatorTest.cs) (revision 6139d8deb7b8f83cd06a4534f04ed18ecbada3b6) @@ -25,6 +25,7 @@ using Core.Common.TestUtil; using Deltares.WTIStability.Data.Geo; using NUnit.Framework; +using Ringtoets.MacroStabilityInwards.KernelWrapper.Calculators.UpliftVan.Input; using Ringtoets.MacroStabilityInwards.KernelWrapper.Creators.Input; using Ringtoets.MacroStabilityInwards.Primitives; @@ -37,7 +38,7 @@ public void Create_SurfaceLineNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SurfaceLineCreator.Create(null); + TestDelegate call = () => SurfaceLineCreator.Create(null, UpliftVanLandwardDirection.PositiveX); // Assert var exception = Assert.Throws(call); @@ -52,7 +53,7 @@ var surfaceLine = new MacroStabilityInwardsSurfaceLine(name); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); @@ -73,7 +74,7 @@ }); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); @@ -97,7 +98,7 @@ }); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); @@ -123,7 +124,7 @@ }); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); @@ -154,7 +155,7 @@ }); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); @@ -210,7 +211,7 @@ surfaceLine.SetDikeTopAtRiverAt(geometry[13]); // Call - SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine); + SurfaceLine2 actual = SurfaceLineCreator.Create(surfaceLine, UpliftVanLandwardDirection.PositiveX); // Assert AssertGeneralValues(name, actual); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.TestUtil/Kernels/UpliftVan/Input/UpliftVanKernelInputAssert.cs =================================================================== diff -u -r3096dd0aeecf478a662cae38533233949c76e103 -r6139d8deb7b8f83cd06a4534f04ed18ecbada3b6 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.TestUtil/Kernels/UpliftVan/Input/UpliftVanKernelInputAssert.cs (.../UpliftVanKernelInputAssert.cs) (revision 3096dd0aeecf478a662cae38533233949c76e103) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.KernelWrapper.TestUtil/Kernels/UpliftVan/Input/UpliftVanKernelInputAssert.cs (.../UpliftVanKernelInputAssert.cs) (revision 6139d8deb7b8f83cd06a4534f04ed18ecbada3b6) @@ -72,6 +72,8 @@ public static void AssertStabilityLocations(StabilityLocation expected, StabilityLocation actual) { Assert.AreEqual(expected.DikeSoilScenario, actual.DikeSoilScenario); + Assert.AreEqual(expected.WaternetCreationMode, actual.WaternetCreationMode); + Assert.AreEqual(expected.PlLineCreationMethod, actual.PlLineCreationMethod); Assert.AreEqual(expected.WaterLevelRiver, actual.WaterLevelRiver); Assert.AreEqual(expected.WaterLevelRiverAverage, actual.WaterLevelRiverAverage); Assert.AreEqual(expected.WaterLevelPolder, actual.WaterLevelPolder); @@ -94,7 +96,6 @@ Assert.AreEqual(expected.LeakageLengthInwardsPl3, actual.LeakageLengthInwardsPl3); Assert.AreEqual(expected.LeakageLengthOutwardsPl4, actual.LeakageLengthOutwardsPl4); Assert.AreEqual(expected.LeakageLengthInwardsPl4, actual.LeakageLengthInwardsPl4); - Assert.AreEqual(expected.WaternetCreationMode, actual.WaternetCreationMode); } /// @@ -107,6 +108,7 @@ public static void AssertSurfaceLines(SurfaceLine2 expected, SurfaceLine2 actual) { Assert.AreEqual(expected.Name, actual.Name); + Assert.AreEqual(expected.LandwardDirection, actual.LandwardDirection); AssertGeometryPointStrings(expected.Geometry, actual.Geometry); AssertCharacteristicPointSets(expected.CharacteristicPoints, actual.CharacteristicPoints); } @@ -330,6 +332,7 @@ Assert.AreEqual(expected.TangentLineZTop, actual.TangentLineZTop); Assert.AreEqual(expected.TangentLineZBottom, actual.TangentLineZBottom); Assert.AreEqual(expected.TangentLineNumber, actual.TangentLineNumber); + Assert.AreEqual(expected.MaxSpacingBetweenBoundaries, actual.MaxSpacingBetweenBoundaries); } } } \ No newline at end of file