Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.Designer.cs
===================================================================
diff -u -r9d1ffc9bd1a9c392c6b832422649a0ad2f5ff59c -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 9d1ffc9bd1a9c392c6b832422649a0ad2f5ff59c)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -70,6 +70,60 @@
}
///
+ /// Looks up a localized string similar to Slootbodem dijkzijde.
+ ///
+ public static string CharacteristicPoint_BottomDitchDikeSide {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_BottomDitchDikeSide", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Slootbodem polderzijde.
+ ///
+ public static string CharacteristicPoint_BottomDitchPolderSide {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_BottomDitchPolderSide", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Teen dijk binnenwaarts.
+ ///
+ public static string CharacteristicPoint_DikeToeAtPolder {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_DikeToeAtPolder", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Teen dijk buitenwaarts.
+ ///
+ public static string CharacteristicPoint_DikeToeAtRiver {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_DikeToeAtRiver", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Insteek sloot dijkzijde.
+ ///
+ public static string CharacteristicPoint_DitchDikeSide {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_DitchDikeSide", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Insteek sloot polderzijde.
+ ///
+ public static string CharacteristicPoint_DitchPolderSide {
+ get {
+ return ResourceManager.GetString("CharacteristicPoint_DitchPolderSide", resourceCulture);
+ }
+ }
+
+ ///
/// Looks up a localized string similar to Commentaar.
///
public static string Comments_DisplayName {
@@ -224,12 +278,12 @@
}
///
- /// Looks up a localized string similar to De geometrie bevat geen punt op locatie ({0},{1},{2}) om als karakteristiek punt in te stellen..
+ /// Looks up a localized string similar to De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen..
///
- public static string RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point {
+ public static string RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_ {
get {
return ResourceManager.GetString("RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_poi" +
- "nt_at_0_1_2_to_assign_as_characteristic_point", resourceCulture);
+ "nt_at_0_1_2_to_assign_as_characteristic_point_3_", resourceCulture);
}
}
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.resx
===================================================================
diff -u -r9d1ffc9bd1a9c392c6b832422649a0ad2f5ff59c -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.resx (.../Resources.resx) (revision 9d1ffc9bd1a9c392c6b832422649a0ad2f5ff59c)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/Properties/Resources.resx (.../Resources.resx) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -180,7 +180,25 @@
Kan geen hoogte bepalen.
-
- De geometrie bevat geen punt op locatie ({0},{1},{2}) om als karakteristiek punt in te stellen.
+
+ De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.
+
+ Slootbodem dijkzijde
+
+
+ Slootbodem polderzijde
+
+
+ Teen dijk binnenwaarts
+
+
+ Teen dijk buitenwaarts
+
+
+ Insteek sloot dijkzijde
+
+
+ Insteek sloot polderzijde
+
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLine.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLine.cs (.../RingtoetsPipingSurfaceLine.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLine.cs (.../RingtoetsPipingSurfaceLine.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -134,9 +134,16 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetDitchPolderSideAt(Point3D point)
{
- DitchPolderSide = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_DitchPolderSide);
+ }
+ DitchPolderSide = geometryPoint;
}
///
@@ -146,9 +153,16 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetBottomDitchPolderSideAt(Point3D point)
{
- BottomDitchPolderSide = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_BottomDitchPolderSide);
+ }
+ BottomDitchPolderSide = geometryPoint;
}
///
@@ -158,9 +172,16 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetBottomDitchDikeSideAt(Point3D point)
{
- BottomDitchDikeSide = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_BottomDitchDikeSide);
+ }
+ BottomDitchDikeSide = geometryPoint;
}
///
@@ -170,9 +191,16 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetDitchDikeSideAt(Point3D point)
{
- DitchDikeSide = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_DitchDikeSide);
+ }
+ DitchDikeSide = geometryPoint;
}
///
@@ -182,9 +210,16 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetDikeToeAtRiverAt(Point3D point)
{
- DikeToeAtRiver = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_DikeToeAtRiver);
+ }
+ DikeToeAtRiver = geometryPoint;
}
///
@@ -194,18 +229,23 @@
/// Thrown when doesn't contain a at
/// .
/// is null.
+ /// Thrown when doesn't contain a at
+ /// .
public void SetDikeToeAtPolderAt(Point3D point)
{
- DikeToeAtPolder = GetPointFromGeometry(point);
+ var geometryPoint = GetPointFromGeometry(point);
+ if (geometryPoint == null)
+ {
+ throw CreatePointNotInGeometryException(point, Resources.CharacteristicPoint_DikeToeAtPolder);
+ }
+ DikeToeAtPolder = geometryPoint;
}
///
/// Finds a point from which is at the same position as .
///
/// The location of a point from .
/// The from at the same location as .
- /// Thrown when doesn't contain a at
- /// .
/// is null.
private Point3D GetPointFromGeometry(Point3D point)
{
@@ -214,19 +254,16 @@
throw new ArgumentNullException("point", "Cannot find a point in geometry using a null point.");
}
var pointFromGeometry = Points.FirstOrDefault(p => p.Equals(point));
- if (pointFromGeometry == null)
- {
- throw CreateCharacteristicPointSetException(point);
- }
return pointFromGeometry;
}
- private static ArgumentException CreateCharacteristicPointSetException(Point3D point)
+ private static ArgumentException CreatePointNotInGeometryException(Point3D point, string characteristicPointDescription)
{
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- point.X,
- point.Y,
- point.Z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ point.X,
+ point.Y,
+ point.Z,
+ characteristicPointDescription);
return new ArgumentException(message);
}
@@ -241,7 +278,6 @@
/// is empty.
public double GetZAtL(double l)
{
-
ValidateHasPoints();
Point2D[] pointsInLocalCoordinates = ProjectGeometryToLZ().ToArray();
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -125,60 +125,6 @@
}
///
- /// Looks up a localized string similar to Slootbodem dijkzijde.
- ///
- public static string CharacteristicPoint_BottomDitchDikeSide {
- get {
- return ResourceManager.GetString("CharacteristicPoint_BottomDitchDikeSide", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Slootbodem polderzijde.
- ///
- public static string CharacteristicPoint_BottomDitchPolderSide {
- get {
- return ResourceManager.GetString("CharacteristicPoint_BottomDitchPolderSide", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Teen dijk binnenwaarts.
- ///
- public static string CharacteristicPoint_DikeToeAtPolder {
- get {
- return ResourceManager.GetString("CharacteristicPoint_DikeToeAtPolder", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Teen dijk buitenwaarts.
- ///
- public static string CharacteristicPoint_DikeToeAtRiver {
- get {
- return ResourceManager.GetString("CharacteristicPoint_DikeToeAtRiver", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Insteek sloot dijkzijde.
- ///
- public static string CharacteristicPoint_DitchDikeSide {
- get {
- return ResourceManager.GetString("CharacteristicPoint_DitchDikeSide", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Insteek sloot polderzijde.
- ///
- public static string CharacteristicPoint_DitchPolderSide {
- get {
- return ResourceManager.GetString("CharacteristicPoint_DitchPolderSide", resourceCulture);
- }
- }
-
- ///
/// Looks up a localized string similar to &Wis uitvoer....
///
public static string Clear_output {
@@ -1377,7 +1323,7 @@
}
///
- /// Looks up a localized string similar to De locatie van het begin van de slootbodem wanneer deze van de kant van de dijk wordt benaderd.
+ /// Looks up a localized string similar to De locatie van het begin van de slootbodem wanneer deze van de kant van de dijk wordt benaderd..
///
public static string RingtoetsPipingSurfaceLine_BottomDitchDikeSide_Description {
get {
@@ -1404,7 +1350,7 @@
}
///
- /// Looks up a localized string similar to De locatie van de teen van de dijk wanneer de dijk van buiten de polder wordt benard..
+ /// Looks up a localized string similar to De locatie van de teen van de dijk wanneer de dijk van buiten de polder wordt benaderd..
///
public static string RingtoetsPipingSurfaceLine_DikeToeAtRiver_Description {
get {
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Properties/Resources.resx (.../Resources.resx) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -536,41 +536,23 @@
Er zijn geen berekeningen om uit te voeren.
- De locatie van het begin van de slootbodem wanneer deze van de kant van de dijk wordt benaderd
+ De locatie van het begin van de slootbodem wanneer deze van de kant van de dijk wordt benaderd.
-
- Slootbodem dijkzijde
-
De locatie van het begin van de slootbodem wanneer deze van binnen de polder wordt benaderd.
-
- Slootbodem polderzijde
-
De locatie van het begin van de sloot wanneer deze van de kant van de dijk wordt benaderd.
-
- Insteek sloot dijkzijde
-
De locatie van het begin van de sloot wanneer deze van binnen de polder wordt benaderd.
-
- Insteek sloot polderzijde
-
- De locatie van de teen van de dijk wanneer de dijk van buiten de polder wordt benard.
+ De locatie van de teen van de dijk wanneer de dijk van buiten de polder wordt benaderd.
-
- Teen dijk buitenwaarts
-
De locatie van de teen van de dijk wanneer de dijk van binnen de polder wordt benaderd.
-
- Teen dijk binnenwaarts
-
Karakteristieke punten
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/RingtoetsPipingSurfaceLineProperties.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/RingtoetsPipingSurfaceLineProperties.cs (.../RingtoetsPipingSurfaceLineProperties.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PropertyClasses/RingtoetsPipingSurfaceLineProperties.cs (.../RingtoetsPipingSurfaceLineProperties.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -30,6 +30,7 @@
using Ringtoets.Piping.Forms.Properties;
using TypeConverter = System.ComponentModel.TypeConverterAttribute;
+using PipingDataResources = Ringtoets.Piping.Data.Properties.Resources;
namespace Ringtoets.Piping.Forms.PropertyClasses
{
@@ -51,7 +52,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_DikeToeAtRiver")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_DikeToeAtRiver")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_DikeToeAtRiver_Description")]
public Point3D DikeToeAtRiver
{
@@ -62,7 +63,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_DikeToeAtPolder")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_DikeToeAtPolder")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_DikeToeAtPolder_Description")]
public Point3D DikeToeAtPolder
{
@@ -73,7 +74,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_DitchDikeSide")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_DitchDikeSide")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_DitchDikeSide_Description")]
public Point3D DitchDikeSide
{
@@ -84,7 +85,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_BottomDitchDikeSide")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_BottomDitchDikeSide")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_BottomDitchDikeSide_Description")]
public Point3D BottomDitchDikeSide
{
@@ -95,7 +96,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_BottomDitchPolderSide")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_BottomDitchPolderSide")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_BottomDitchPolderSide_Description")]
public Point3D BottomDitchPolderSide
{
@@ -106,7 +107,7 @@
}
[ResourcesCategory(typeof(Resources), "Categories_Characteristic_points")]
- [ResourcesDisplayName(typeof(Resources), "CharacteristicPoint_DitchPolderSide")]
+ [ResourcesDisplayName(typeof(PipingDataResources), "CharacteristicPoint_DitchPolderSide")]
[ResourcesDescription(typeof(Resources), "RingtoetsPipingSurfaceLine_DitchPolderSide_Description")]
public Point3D DitchPolderSide
{
Index: Ringtoets/Piping/src/Ringtoets.Piping.IO/SurfaceLines/CharacteristicPointsCsvReader.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.IO/SurfaceLines/CharacteristicPointsCsvReader.cs (.../CharacteristicPointsCsvReader.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.IO/SurfaceLines/CharacteristicPointsCsvReader.cs (.../CharacteristicPointsCsvReader.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -44,7 +44,7 @@
///
public class CharacteristicPointsCsvReader : IDisposable
{
- public static readonly Point3D UndefinedPoint = new Point3D
+ private static readonly Point3D undefinedPoint = new Point3D
{
X = -1,
Y = -1,
@@ -414,20 +414,27 @@
{
try
{
+ Point3D point = null;
var xColumnKey = xPrefix + typeKey;
if (columnsInFile.ContainsKey(xColumnKey))
{
var xColumnIndex = columnsInFile[xColumnKey];
var yColumnIndex = columnsInFile[yPrefix + typeKey];
var zColumnIndex = columnsInFile[zPrefix + typeKey];
- return new Point3D
+
+ point = new Point3D
{
X = double.Parse(valuesRead[xColumnIndex], CultureInfo.InvariantCulture),
Y = double.Parse(valuesRead[yColumnIndex], CultureInfo.InvariantCulture),
Z = double.Parse(valuesRead[zColumnIndex], CultureInfo.InvariantCulture)
};
+
+ if(point.Equals(undefinedPoint))
+ {
+ point = null;
+ }
}
- return null;
+ return point;
}
catch (FormatException e)
{
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/PipingSurfaceLinesCsvImporter.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/PipingSurfaceLinesCsvImporter.cs (.../PipingSurfaceLinesCsvImporter.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/PipingSurfaceLinesCsvImporter.cs (.../PipingSurfaceLinesCsvImporter.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -46,16 +46,11 @@
///
public class PipingSurfaceLinesCsvImporter : FileImporterBase
{
- private readonly ILog log;
+ private readonly ILog log = LogManager.GetLogger(typeof(PipingSurfaceLinesCsvImporter));
private const string characteristicPointsFileSubExtension = ".krp";
private const string csvFileExtension = ".csv";
- public PipingSurfaceLinesCsvImporter()
- {
- log = LogManager.GetLogger(GetType());
- }
-
public override string Name
{
get
@@ -342,66 +337,14 @@
private void SetCharacteristicPointsOnSurfaceLine(RingtoetsPipingSurfaceLine readSurfaceLine, CharacteristicPoints characteristicPointsLocation)
{
- TrySetCharacteristicPoint(
- characteristicPointsLocation.DitchPolderSide,
- readSurfaceLine.SetDitchPolderSideAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_DitchPolderSide);
-
- TrySetCharacteristicPoint(
- characteristicPointsLocation.BottomDitchPolderSide,
- readSurfaceLine.SetBottomDitchPolderSideAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_BottomDitchPolderSide);
-
- TrySetCharacteristicPoint(
- characteristicPointsLocation.BottomDitchDikeSide,
- readSurfaceLine.SetBottomDitchDikeSideAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_BottomDitchDikeSide);
-
- TrySetCharacteristicPoint(
- characteristicPointsLocation.DitchDikeSide,
- readSurfaceLine.SetDitchDikeSideAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_DitchDikeSide);
-
- TrySetCharacteristicPoint(
- characteristicPointsLocation.DikeToeAtRiver,
- readSurfaceLine.SetDikeToeAtRiverAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_DikeToeAtRiver);
-
- TrySetCharacteristicPoint(
- characteristicPointsLocation.DikeToeAtPolder,
- readSurfaceLine.SetDikeToeAtPolderAt,
- readSurfaceLine.Name,
- PipingFormsResources.CharacteristicPoint_DikeToeAtPolder);
+ readSurfaceLine.TrySetDitchPolderSide(characteristicPointsLocation.DitchPolderSide);
+ readSurfaceLine.TrySetBottomDitchPolderSide(characteristicPointsLocation.BottomDitchPolderSide);
+ readSurfaceLine.TrySetBottomDitchDikeSide(characteristicPointsLocation.BottomDitchDikeSide);
+ readSurfaceLine.TrySetDitchDikeSide(characteristicPointsLocation.DitchDikeSide);
+ readSurfaceLine.TrySetDikeToeAtRiver(characteristicPointsLocation.DikeToeAtRiver);
+ readSurfaceLine.TrySetDikeToeAtPolder(characteristicPointsLocation.DikeToeAtPolder);
}
- private void TrySetCharacteristicPoint(Point3D point, Action setAction, string surfaceLineName, string characteristicPointType)
- {
- if (IsDefined(point))
- {
- try
- {
- setAction(point);
- }
- catch (ArgumentException e)
- {
- log.ErrorFormat(RingtoetsPluginResources.PipingSurfaceLinesCsvImporter_CharacteristicPoint_0_of_SurfaceLine_1_skipped_cause_2_,
- characteristicPointType,
- surfaceLineName,
- e.Message);
- }
- }
- }
-
- private bool IsDefined(Point3D point)
- {
- return point != null && !point.Equals(CharacteristicPointsCsvReader.UndefinedPoint);
- }
-
private void HandleUserCancellingImport()
{
log.Info(RingtoetsPluginResources.PipingSurfaceLinesCsvImporter_Import_Import_cancelled);
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/RingtoetsPipingSurfaceLineExtensions.cs
===================================================================
diff -u
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/RingtoetsPipingSurfaceLineExtensions.cs (revision 0)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/FileImporter/RingtoetsPipingSurfaceLineExtensions.cs (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -0,0 +1,122 @@
+using System;
+using Core.Common.Base.Geometry;
+using log4net;
+using Ringtoets.Piping.Data;
+using Ringtoets.Piping.Plugin.Properties;
+
+namespace Ringtoets.Piping.Plugin.FileImporter
+{
+ public static class RingtoetsPipingSurfaceLineExtensions
+ {
+ private static readonly ILog log = LogManager.GetLogger(typeof(RingtoetsPipingSurfaceLineExtensions));
+
+ public static bool TrySetDitchPolderSide(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetDitchPolderSideAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ public static bool TrySetBottomDitchPolderSide(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetBottomDitchPolderSideAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ public static bool TrySetBottomDitchDikeSide(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetBottomDitchDikeSideAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ public static bool TrySetDitchDikeSide(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetDitchDikeSideAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ public static bool TrySetDikeToeAtRiver(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetDikeToeAtRiverAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ public static bool TrySetDikeToeAtPolder(this RingtoetsPipingSurfaceLine surfaceLine, Point3D point)
+ {
+ if (point != null)
+ {
+ try
+ {
+ surfaceLine.SetDikeToeAtPolderAt(point);
+ return true;
+ }
+ catch (ArgumentException e)
+ {
+ LogError(surfaceLine, e);
+ }
+ }
+ return false;
+ }
+
+ private static void LogError(RingtoetsPipingSurfaceLine surfaceLine, ArgumentException e)
+ {
+ log.ErrorFormat(Resources.PipingSurfaceLinesCsvImporter_CharacteristicPoint_of_SurfaceLine_0_skipped_cause_1_,
+ surfaceLine.Name,
+ e.Message);
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.Designer.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -176,12 +176,12 @@
}
///
- /// Looks up a localized string similar to Karakteristiek punt '{0}' van profielmeting '{1}' is overgeslagen. {2}.
+ /// Looks up a localized string similar to Karakteristiek punt van profielmeting '{0}' is overgeslagen. {1}.
///
- public static string PipingSurfaceLinesCsvImporter_CharacteristicPoint_0_of_SurfaceLine_1_skipped_cause_2_ {
+ public static string PipingSurfaceLinesCsvImporter_CharacteristicPoint_of_SurfaceLine_0_skipped_cause_1_ {
get {
- return ResourceManager.GetString("PipingSurfaceLinesCsvImporter_CharacteristicPoint_0_of_SurfaceLine_1_skipped_caus" +
- "e_2_", resourceCulture);
+ return ResourceManager.GetString("PipingSurfaceLinesCsvImporter_CharacteristicPoint_of_SurfaceLine_0_skipped_cause_" +
+ "1_", resourceCulture);
}
}
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.resx
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.resx (.../Resources.resx) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Properties/Resources.resx (.../Resources.resx) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -173,8 +173,8 @@
Inlezen '{0}'
-
- Karakteristiek punt '{0}' van profielmeting '{1}' is overgeslagen. {2}
+
+ Karakteristiek punt van profielmeting '{0}' is overgeslagen. {1}
Er konden geen karakteristieke punten gevonden worden voor profielmeting '{0}'.
Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Ringtoets.Piping.Plugin.csproj
===================================================================
diff -u -rfea3332b5f7a5cea6b41de4a6368c1f1c2bf1282 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Ringtoets.Piping.Plugin.csproj (.../Ringtoets.Piping.Plugin.csproj) (revision fea3332b5f7a5cea6b41de4a6368c1f1c2bf1282)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/Ringtoets.Piping.Plugin.csproj (.../Ringtoets.Piping.Plugin.csproj) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -63,6 +63,7 @@
+
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/RingtoetsPipingSurfaceLineTest.cs
===================================================================
diff -u -r06f9145d8180df7fd26eac086a3f431c181e4d64 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/RingtoetsPipingSurfaceLineTest.cs (.../RingtoetsPipingSurfaceLineTest.cs) (revision 06f9145d8180df7fd26eac086a3f431c181e4d64)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/RingtoetsPipingSurfaceLineTest.cs (.../RingtoetsPipingSurfaceLineTest.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -337,8 +337,8 @@
TestDelegate test = () => surfaceLine.SetDitchPolderSideAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x,y,z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_DitchPolderSide);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
@@ -399,8 +399,8 @@
TestDelegate test = () => surfaceLine.SetBottomDitchPolderSideAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x, y, z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_BottomDitchPolderSide);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
@@ -461,8 +461,8 @@
TestDelegate test = () => surfaceLine.SetBottomDitchDikeSideAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x, y, z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_BottomDitchDikeSide);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
@@ -523,8 +523,8 @@
TestDelegate test = () => surfaceLine.SetDitchDikeSideAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x, y, z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_DitchDikeSide);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
@@ -585,8 +585,8 @@
TestDelegate test = () => surfaceLine.SetDikeToeAtRiverAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x, y, z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_DikeToeAtRiver);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
@@ -647,8 +647,8 @@
TestDelegate test = () => surfaceLine.SetDikeToeAtPolderAt(testPoint);
// Assert
- var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,
- x, y, z);
+ var message = string.Format(Resources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ x, y, z, Resources.CharacteristicPoint_DikeToeAtPolder);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message);
}
Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SurfaceLines/CharacteristicPointsCsvReaderTest.cs
===================================================================
diff -u -re5e9b60b2f5badab0a2b54a4c8542baf124751ce -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SurfaceLines/CharacteristicPointsCsvReaderTest.cs (.../CharacteristicPointsCsvReaderTest.cs) (revision e5e9b60b2f5badab0a2b54a4c8542baf124751ce)
+++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SurfaceLines/CharacteristicPointsCsvReaderTest.cs (.../CharacteristicPointsCsvReaderTest.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -659,19 +659,9 @@
Z = -0.31
}, location1.DikeToeAtPolder);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location1.TopShoulderInside);
+ Assert.IsNull(location1.TopShoulderInside);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location1.ShoulderInside);
+ Assert.IsNull(location1.ShoulderInside);
Assert.AreEqual(new Point3D
{
@@ -701,19 +691,9 @@
Z = 2.61
}, location1.DikeTopAtRiver);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location1.ShoulderOutisde);
+ Assert.IsNull(location1.ShoulderOutisde);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location1.TopShoulderOutside);
+ Assert.IsNull(location1.TopShoulderOutside);
Assert.AreEqual(new Point3D
{
@@ -787,19 +767,9 @@
Z = -0.49
}, location2.DikeToeAtPolder);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location2.TopShoulderInside);
+ Assert.IsNull(location2.TopShoulderInside);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location2.ShoulderInside);
+ Assert.IsNull(location2.ShoulderInside);
Assert.AreEqual(new Point3D
{
@@ -829,19 +799,9 @@
Z = 3.11
}, location2.DikeTopAtRiver);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location2.ShoulderOutisde);
+ Assert.IsNull(location2.ShoulderOutisde);
- Assert.AreEqual(new Point3D
- {
- X = -1,
- Y = -1,
- Z = -1
- }, location2.TopShoulderOutside);
+ Assert.IsNull(location2.TopShoulderOutside);
Assert.AreEqual(new Point3D
{
Index: Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/PipingSurfaceLinesCsvImporterTest.cs
===================================================================
diff -u -r981012698aa65aef36e42fb07cce85f046ea7eb4 -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/PipingSurfaceLinesCsvImporterTest.cs (.../PipingSurfaceLinesCsvImporterTest.cs) (revision 981012698aa65aef36e42fb07cce85f046ea7eb4)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/PipingSurfaceLinesCsvImporterTest.cs (.../PipingSurfaceLinesCsvImporterTest.cs) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -1013,13 +1013,16 @@
Action call = () => importResult = importer.Import(observableSurfaceLinesList, surfaceLines);
// Assert
- var pointFormat = string.Format(PipingDataResources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point,0,1,2);
+ var pointFormat = string.Format(PipingDataResources.RingtoetsPipingSurfaceLine_SetCharacteristicPointAt_Geometry_does_not_contain_point_at_0_1_2_to_assign_as_characteristic_point_3_,
+ 0,
+ 1,
+ 2,
+ characteristicPointName);
var expectedLogMessages = new[]
{
string.Format(ApplicationResources.PipingSurfaceLinesCsvImporter_ReadCharacteristicPoints_Start_reading_characteristic_points_from_file_0_,
corruptPath),
- string.Format(ApplicationResources.PipingSurfaceLinesCsvImporter_CharacteristicPoint_0_of_SurfaceLine_1_skipped_cause_2_,
- characteristicPointName,
+ string.Format(ApplicationResources.PipingSurfaceLinesCsvImporter_CharacteristicPoint_of_SurfaceLine_0_skipped_cause_1_,
"Rotterdam1Invalid",
pointFormat)
};
Index: Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/RingtoetsPipingSurfaceLineExtensionsTest.cs
===================================================================
diff -u
--- Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/RingtoetsPipingSurfaceLineExtensionsTest.cs (revision 0)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/FileImporter/RingtoetsPipingSurfaceLineExtensionsTest.cs (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -0,0 +1,451 @@
+using System;
+using Core.Common.Base.Geometry;
+using Core.Common.TestUtil;
+using NUnit.Framework;
+using Ringtoets.Piping.Data;
+using Ringtoets.Piping.Plugin.FileImporter;
+
+namespace Ringtoets.Piping.Plugin.Test.FileImporter
+{
+ [TestFixture]
+ public class RingtoetsPipingSurfaceLineExtensionsTest
+ {
+ [Test]
+ public void TrySetDitchPolderSide_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetDitchPolderSide(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDitchPolderSide_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetDitchPolderSide(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_DitchPolderSide);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDitchPolderSide_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new [] { point });
+
+ // Call
+ var result = surfaceLine.TrySetDitchPolderSide(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.DitchPolderSide);
+ }
+
+ [Test]
+ public void TrySetBottomDitchDikeSide_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetBottomDitchDikeSide(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetBottomDitchDikeSide_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetBottomDitchDikeSide(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_BottomDitchDikeSide);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetBottomDitchDikeSide_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new[] { point });
+
+ // Call
+ var result = surfaceLine.TrySetBottomDitchDikeSide(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.BottomDitchDikeSide);
+ }
+
+ [Test]
+ public void TrySetBottomDitchPolderSide_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetBottomDitchPolderSide(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetBottomDitchPolderSide_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetBottomDitchPolderSide(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_BottomDitchPolderSide);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetBottomDitchPolderSide_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new[] { point });
+
+ // Call
+ var result = surfaceLine.TrySetBottomDitchPolderSide(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.BottomDitchPolderSide);
+ }
+
+ [Test]
+ public void TrySetDitchDikeSide_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetDitchDikeSide(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDitchDikeSide_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetDitchDikeSide(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_DitchDikeSide);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDitchDikeSide_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new[] { point });
+
+ // Call
+ var result = surfaceLine.TrySetDitchDikeSide(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.DitchDikeSide);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtPolder_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetDikeToeAtPolder(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtPolder_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetDikeToeAtPolder(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_DikeToeAtPolder);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtPolder_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new[] { point });
+
+ // Call
+ var result = surfaceLine.TrySetDikeToeAtPolder(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.DikeToeAtPolder);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtRiver_Null_ReturnsFalse()
+ {
+ // Setup
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ // Call
+ var result = surfaceLine.TrySetDikeToeAtRiver(null);
+
+ // Assert
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtRiver_NoPointInGeometry_LogAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine
+ {
+ Name = "testName"
+ };
+
+ var result = true;
+
+ // Call
+ Action test = () =>
+ {
+ result = surfaceLine.TrySetDikeToeAtRiver(new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ });
+ };
+
+ // Assert
+ var message = string.Format("Karakteristiek punt van profielmeting 'testName' is overgeslagen. De geometrie bevat geen punt op locatie ({0},{1},{2}) om als '{3}' in te stellen.",
+ x, y, z, Data.Properties.Resources.CharacteristicPoint_DikeToeAtRiver);
+ TestHelper.AssertLogMessageIsGenerated(test, message, 1);
+ Assert.IsFalse(result);
+ }
+
+ [Test]
+ public void TrySetDikeToeAtRiver_NoPointInGeometry_PointSetAndReturnFalse()
+ {
+ // Setup
+ var random = new Random(21);
+ var x = random.NextDouble();
+ var y = random.NextDouble();
+ var z = random.NextDouble();
+ var surfaceLine = new RingtoetsPipingSurfaceLine();
+
+ var point = new Point3D
+ {
+ X = x,
+ Y = y,
+ Z = z
+ };
+
+ surfaceLine.SetGeometry(new[] { point });
+
+ // Call
+ var result = surfaceLine.TrySetDikeToeAtRiver(point);
+
+ // Assert
+ Assert.IsTrue(result);
+ Assert.AreEqual(point, surfaceLine.DikeToeAtRiver);
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/Ringtoets.Piping.Plugin.Test.csproj
===================================================================
diff -u -re315307a730a87022136e7fa7b97a570d37399dc -r96e2d588e43f76a8eba5c47805eaaf8560f042d0
--- Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/Ringtoets.Piping.Plugin.Test.csproj (.../Ringtoets.Piping.Plugin.Test.csproj) (revision e315307a730a87022136e7fa7b97a570d37399dc)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/Ringtoets.Piping.Plugin.Test.csproj (.../Ringtoets.Piping.Plugin.Test.csproj) (revision 96e2d588e43f76a8eba5c47805eaaf8560f042d0)
@@ -65,6 +65,7 @@
+