Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs =================================================================== diff -u -r4117 -r4143 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 4117) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 4143) @@ -27,13 +27,12 @@ using Deltares.Geotechnics.SurfaceLines; using Deltares.Standard; using Deltares.Standard.Extensions; -using Deltares.Standard.IO.DtoAssembler; using Deltares.Standard.Logging; namespace Deltares.Dam.Data.DamEngineIo; /// -/// Converts types from Dam Engine class to Input serializer class and vice versa +/// Converts types from Dam Engine class to Input serializer class and vice versa /// public static class ConversionHelper { @@ -69,202 +68,202 @@ public const int InputSegmentFailureMechanismPiping = 2; /// - /// The input zone type no zones + /// The input zone type no zones /// public const int InputZoneTypeNoZones = 0; /// - /// The input zone types forbidden zones + /// The input zone types forbidden zones /// public const int InputZoneTypesForbiddenZones = 2; /// - /// The input search method grid + /// The input search method grid /// public const int InputSearchMethodGrid = 0; /// - /// The input search method genetic + /// The input search method genetic /// public const int InputSearchMethodGenetic = 1; /// - /// The input search method bee swarm + /// The input search method bee swarm /// public const int InputSearchMethodBeeSwarm = 2; /// - /// The input grid type automatic + /// The input grid type automatic /// public const int InputGridTypeAutomatic = 0; /// - /// The input grid type specified + /// The input grid type specified /// public const int InputGridTypeSpecified = 1; /// - /// The input tangent lines on boundaty lines + /// The input tangent lines on boundaty lines /// public const int InputTangentLinesOnBoundatyLines = 0; /// - /// The input tangent lines specified + /// The input tangent lines specified /// public const int InputTangentLinesSpecified = 1; /// - /// The load situation dry + /// The load situation dry /// public const int LoadSituationDry = 0; /// - /// The load situation wet + /// The load situation wet /// public const int LoadSituationWet = 1; /// - /// The dike dry sensitivity none + /// The dike dry sensitivity none /// public const int DikeDrySensitivityNone = 0; /// - /// The dike dry sensitivity dry + /// The dike dry sensitivity dry /// public const int DikeDrySensitivityDry = 1; /// - /// The hydraulic shortcut type hydraulic shortcut + /// The hydraulic shortcut type hydraulic shortcut /// public const int HydraulicShortcutTypeHydraulicShortcut = 0; /// - /// The hydraulic shortcut type no hydraulic shortcut + /// The hydraulic shortcut type no hydraulic shortcut /// public const int HydraulicShortcutTypeNoHydraulicShortcut = 1; /// - /// The uplift type uplift + /// The uplift type uplift /// public const int UpliftTypeUplift = 0; /// - /// The uplift type no uplift + /// The uplift type no uplift /// public const int UpliftTypeNoUplift = 1; /// - /// The m stab model type bishop + /// The m stab model type bishop /// public const int MStabModelTypeBishop = 0; /// - /// The m stab model type spencer + /// The m stab model type spencer /// public const int MStabModelTypeSpencer = 1; /// - /// The m stab model type fellenius + /// The m stab model type fellenius /// public const int MStabModelTypeFellenius = 2; /// - /// The m stab model type uplift van + /// The m stab model type uplift van /// public const int MStabModelTypeUpliftVan = 3; /// - /// The m stab model type uplift spencer + /// The m stab model type uplift spencer /// public const int MStabModelTypeUpliftSpencer = 4; /// - /// The m stab model type bishop random field + /// The m stab model type bishop random field /// public const int MStabModelTypeBishopRandomField = 5; /// - /// The m stab model type bishop uplift van + /// The m stab model type bishop uplift van /// public const int MStabModelTypeBishopUpliftVan = 7; /// - /// The scenario type scenario01 + /// The scenario type scenario01 /// public const int ScenarioTypeScenario01 = 0; /// - /// The scenario type scenario02 + /// The scenario type scenario02 /// public const int ScenarioTypeScenario02 = 1; /// - /// The scenario type scenario03 + /// The scenario type scenario03 /// public const int ScenarioTypeScenario03 = 2; /// - /// The scenario type scenario04 + /// The scenario type scenario04 /// public const int ScenarioTypeScenario04 = 3; /// - /// The scenario type scenario05 + /// The scenario type scenario05 /// public const int ScenarioTypeScenario05 = 4; /// - /// The scenario type scenario06 + /// The scenario type scenario06 /// public const int ScenarioTypeScenario06 = 5; /// - /// The scenario type scenario07 + /// The scenario type scenario07 /// public const int ScenarioTypeScenario07 = 6; /// - /// The scenario type scenario08 + /// The scenario type scenario08 /// public const int ScenarioTypeScenario08 = 7; /// - /// The scenario type scenario09 + /// The scenario type scenario09 /// public const int ScenarioTypeScenario09 = 8; /// - /// The scenario type scenario10 + /// The scenario type scenario10 /// public const int ScenarioTypeScenario10 = 9; /// - /// The scenario type scenario11 + /// The scenario type scenario11 /// public const int ScenarioTypeScenario11 = 10; /// - /// The piping model type bligh + /// The piping model type bligh /// public const int PipingModelTypeBligh = 0; /// - /// The piping model type sellmeijer + /// The piping model type sellmeijer /// public const int PipingModelTypeSellmeijer = 1; /// - /// The piping model type sellmeijer4 forces + /// The piping model type sellmeijer4 forces /// public const int PipingModelTypeSellmeijer4Forces = 2; /// - /// The piping model type wti2017 + /// The piping model type wti2017 /// public const int PipingModelTypeWti2017 = 3; /// - /// Constants for translating to Enums TimeStepUnit + /// Constants for translating to Enums TimeStepUnit /// public const uint TimeStepUnitSecond = 0; @@ -277,7 +276,7 @@ public const uint TimeStepUnitNonequidistant = 7; /// - /// Constants for translating to Enums PlLineType + /// Constants for translating to Enums PlLineType /// public const uint PlLineTypePl1 = 1; @@ -286,23 +285,23 @@ public const uint PlLineTypePl4 = 4; /// - /// Constants for translating to Enums SensorType + /// Constants for translating to Enums SensorType /// public const uint SensorTypePiezometricHead = 0; public const uint SensorTypeWaterLevel = 1; public const uint SensorTypePolderLevel = 2; /// - /// Constants for translating to Enums DataSourceTypeSensors + /// Constants for translating to Enums DataSourceTypeSensors /// public const uint DataSourceTypeSensorsIgnore = 0; public const uint DataSourceTypeSensorsLocationData = 1; public const uint DataSourceTypeSensorsSensor = 2; /// - /// Converts the type DamProjectType from input object type to Dam Engine type. + /// Converts the type DamProjectType from input object type to Dam Engine type. /// /// Type of the input object. /// Dam Engine type @@ -321,7 +320,7 @@ } /// - /// Converts the type DamProjectType from Dam Engine type to input object type. + /// Converts the type DamProjectType from Dam Engine type to input object type. /// /// Type of the dam project. /// Type of the input object. @@ -345,11 +344,11 @@ } /// - /// Converts the type PLLineCreationMethod from Dam Engine type to input object type. + /// Converts the type PLLineCreationMethod from Dam Engine type to input object type. /// /// Type of the dam project. /// - /// Type of the input object. + /// Type of the input object. /// public static LocationWaternetOptionsPhreaticLineCreationMethod ConvertToInputPhreaticLineCreationMethod(PLLineCreationMethod plLineCreationMethod) { @@ -375,11 +374,11 @@ } /// - /// Converts the type PLLineCreationMethod from input object type to Dam Engine type. + /// Converts the type PLLineCreationMethod from input object type to Dam Engine type. /// /// Type of the input object. /// - /// Type of the dam object. + /// Type of the dam object. /// public static PLLineCreationMethod ConvertToPhreaticLineCreationMethod(LocationWaternetOptionsPhreaticLineCreationMethod inputPhreaticLineCreationMethod) { @@ -405,11 +404,11 @@ } /// - /// Converts the type IntrusionVerticalWaterPressureType from Dam Engine type to input object type. + /// Converts the type IntrusionVerticalWaterPressureType from Dam Engine type to input object type. /// /// Type of the dam project. /// - /// Type of the input object. + /// Type of the input object. /// public static LocationWaternetOptionsIntrusionVerticalWaterPressure ConvertToInputIntrusionVerticalWaterPressure(IntrusionVerticalWaterPressureType intrusionVerticalWaterPressureType) { @@ -435,11 +434,11 @@ } /// - /// Converts the type IntrusionVerticalWaterPressureType from input object type to Dam Engine type. + /// Converts the type IntrusionVerticalWaterPressureType from input object type to Dam Engine type. /// /// Type of the input object. /// - /// Type of the dam object. + /// Type of the dam object. /// public static IntrusionVerticalWaterPressureType ConvertToIntrusionVerticalWaterPressure(LocationWaternetOptionsIntrusionVerticalWaterPressure inputIntrusionVerticalWaterPressure) { @@ -465,7 +464,7 @@ } /// - /// Converts the type of to dam point. + /// Converts the type of to dam point. /// /// Type of the input point. /// @@ -532,7 +531,7 @@ } /// - /// Converts the type of to input point. + /// Converts the type of to input point. /// /// Type of the characteristic point. /// @@ -616,7 +615,7 @@ } /// - /// Converts to calculation result. + /// Converts to calculation result. /// /// The calculation result. /// @@ -656,7 +655,7 @@ } /// - /// Converts to output calculation result. + /// Converts to output calculation result. /// /// Type of the dam project. /// @@ -696,7 +695,7 @@ } /// - /// Converts to waterpressure interpolation model. + /// Converts to waterpressure interpolation model. /// /// The input waterpressure interpolation model. /// @@ -715,7 +714,7 @@ } /// - /// Converts to input waterpressure interpolation model. + /// Converts to input waterpressure interpolation model. /// /// The waterpressure interpolation model. /// @@ -734,7 +733,7 @@ } /// - /// Converts the Dam profile type to the input profile type + /// Converts the Dam profile type to the input profile type /// /// Type of the soil geometry. /// @@ -756,7 +755,7 @@ } /// - /// Converts the input profile type to the Dam profile type + /// Converts the input profile type to the Dam profile type /// /// Type of the soil geometry. /// @@ -778,7 +777,7 @@ } /// - /// Converts the Dam failure mechanism type to the input failure mechanism type . + /// Converts the Dam failure mechanism type to the input failure mechanism type . /// /// Type of the segment failure mechanism. /// @@ -800,7 +799,7 @@ } /// - /// Converts the input failure mechanism type to the Dam failure mechanism type . + /// Converts the input failure mechanism type to the Dam failure mechanism type . /// /// Type of the failure mechanism system. /// @@ -822,7 +821,7 @@ } /// - /// Converts the Dam segment failure mechanism type to the input segment failure mechanism type . + /// Converts the Dam segment failure mechanism type to the input segment failure mechanism type . /// /// Type of the segment failure mechanism. /// @@ -844,7 +843,7 @@ } /// - /// Converts the input segment failure mechanism type to the Dam segment failure mechanism type . + /// Converts the input segment failure mechanism type to the Dam segment failure mechanism type . /// /// Type of the failure mechanism system. /// @@ -868,7 +867,7 @@ } /// - /// Converts the Dam piping model to the input piping model. + /// Converts the Dam piping model to the input piping model. /// /// Type of the piping model. /// @@ -893,7 +892,7 @@ } /// - /// Converts the input piping model to the Dam piping model. + /// Converts the input piping model to the Dam piping model. /// /// Type of the input piping model. /// @@ -918,7 +917,7 @@ } /// - /// Converts the Dam stability model to the input stability model. + /// Converts the Dam stability model to the input stability model. /// /// Type of the stability model. /// @@ -940,7 +939,7 @@ } /// - /// Converts the input stability model to the Dam stability model. + /// Converts the input stability model to the Dam stability model. /// /// Type of the input stability model. /// @@ -962,7 +961,7 @@ } /// - /// Converts the Dam stability model to the output stability model. + /// Converts the Dam stability model to the output stability model. /// /// Type of the stability model. /// @@ -984,7 +983,7 @@ } /// - /// Converts the output stability model to the Dam stability model. + /// Converts the output stability model to the Dam stability model. /// /// Type of the output stability model. /// @@ -1006,7 +1005,7 @@ } /// - /// Converts the Dam analysis type to the input analysis type. + /// Converts the Dam analysis type to the input analysis type. /// /// Type of the analysis. /// @@ -1025,7 +1024,7 @@ } /// - /// Converts the input analysis type to the Dam analysis type. + /// Converts the input analysis type to the Dam analysis type. /// /// Type of the input analysis. /// @@ -1044,7 +1043,7 @@ } /// - /// Converts the type of to input zone. + /// Converts the type of to input zone. /// /// Type of the zone. /// @@ -1059,15 +1058,16 @@ MStabZonesType.ForbiddenZone, InputZoneTypesForbiddenZones } }; - if (zoneType != MStabZonesType.NoZones && zoneType != MStabZonesType.ForbiddenZone) + if ((zoneType != MStabZonesType.NoZones) && (zoneType != MStabZonesType.ForbiddenZone)) { zoneType = MStabZonesType.NoZones; } + return translationTable[zoneType]; } /// - /// Converts the type of to zone. + /// Converts the type of to zone. /// /// Type of the input zone. /// @@ -1086,7 +1086,7 @@ } /// - /// Converts the Dam message type to the input message type. + /// Converts the Dam message type to the input message type. /// /// Type of the message. /// @@ -1117,7 +1117,7 @@ } /// - /// Converts the input message type to the Dam message type. + /// Converts the input message type to the Dam message type. /// /// Type of the validation result message. /// @@ -1139,7 +1139,7 @@ } /// - /// Converts to input search method. + /// Converts to input search method. /// /// The search method. /// @@ -1161,7 +1161,7 @@ } /// - /// Converts to search method. + /// Converts to search method. /// /// The search method. /// @@ -1183,7 +1183,7 @@ } /// - /// Converts to input grid determination. + /// Converts to input grid determination. /// /// Type of the grid. /// @@ -1203,7 +1203,7 @@ } /// - /// Converts to grid determination. + /// Converts to grid determination. /// /// Type of the grid. /// @@ -1222,7 +1222,7 @@ } /// - /// Converts to input tangent lines definition. + /// Converts to input tangent lines definition. /// /// Type of the tangent line. /// @@ -1241,7 +1241,7 @@ } /// - /// Converts to tangent lines definition. + /// Converts to tangent lines definition. /// /// Type of the tangent line. /// @@ -1260,7 +1260,7 @@ } /// - /// Converts the shear strength model to soil shear strength model. + /// Converts the shear strength model to soil shear strength model. /// /// The shear strength model. /// @@ -1300,7 +1300,7 @@ } /// - /// Converts the soil shear strength model to shear strength model. + /// Converts the soil shear strength model to shear strength model. /// /// The soil shear strength model. /// @@ -1340,7 +1340,7 @@ } /// - /// Converts the dilatancy type to soil dilatancy dilatancy. + /// Converts the dilatancy type to soil dilatancy dilatancy. /// /// Type of the dilatancy. /// @@ -1362,7 +1362,7 @@ } /// - /// Converts the soil dilatancy type to dilatancy type. + /// Converts the soil dilatancy type to dilatancy type. /// /// Type of the soil dilatancy. /// @@ -1384,7 +1384,7 @@ } /// - /// Converts the input StabilityDesignMethod to the Dam StabilityDesignMethod. + /// Converts the input StabilityDesignMethod to the Dam StabilityDesignMethod. /// /// The stability design method. /// @@ -1403,7 +1403,7 @@ } /// - /// Converts the Dam StabilityDesignMethod to the input StabilityDesignMethod. + /// Converts the Dam StabilityDesignMethod to the input StabilityDesignMethod. /// /// The stability design method. /// @@ -1422,7 +1422,7 @@ } /// - /// Converts to Load Situation. + /// Converts to Load Situation. /// /// The input Load Situation. /// @@ -1441,7 +1441,7 @@ } /// - /// Converts to output LoadSituation. + /// Converts to output LoadSituation. /// /// The Load Situation. /// @@ -1460,7 +1460,7 @@ } /// - /// Converts to Uplift Type. + /// Converts to Uplift Type. /// /// The input UpliftType. /// @@ -1479,7 +1479,7 @@ } /// - /// Converts to output Uplift Type. + /// Converts to output Uplift Type. /// /// The UpliftType. /// @@ -1498,7 +1498,7 @@ } /// - /// Converts to MStab Model Type. + /// Converts to MStab Model Type. /// /// The input MStabModelType. /// @@ -1532,7 +1532,7 @@ } /// - /// Converts to output MStabModelType. + /// Converts to output MStabModelType. /// /// The UpliftType. /// @@ -1566,7 +1566,7 @@ } /// - /// Converts to Piping Model Type. + /// Converts to Piping Model Type. /// /// The input PipingModelType. /// @@ -1591,7 +1591,7 @@ } /// - /// Converts to output PipingModelType. + /// Converts to output PipingModelType. /// /// The UpliftType. /// @@ -1616,7 +1616,7 @@ } /// - /// Converts the input TimeStepUnit to the TimeStepUnit. + /// Converts the input TimeStepUnit to the TimeStepUnit. /// /// The time step unit. /// @@ -1653,7 +1653,7 @@ } /// - /// Converts the TimeStepUnit to the input TimeStepUnit. + /// Converts the TimeStepUnit to the input TimeStepUnit. /// /// The time step unit. /// @@ -1690,7 +1690,7 @@ } /// - /// Converts the input plLineType to Dam plLineType. + /// Converts the input plLineType to Dam plLineType. /// /// Type of the pl line. /// plLineType @@ -1715,7 +1715,7 @@ } /// - /// Converts the Dam plLineType to input plLineType. + /// Converts the Dam plLineType to input plLineType. /// /// Type of the pl line. /// plLineType as integer @@ -1740,7 +1740,7 @@ } /// - /// Converts the Dam sensorType to input sensorType. + /// Converts the Dam sensorType to input sensorType. /// /// Type of the sensor. /// sensorType @@ -1762,7 +1762,7 @@ } /// - /// Converts the Dam sensorType to input sensorType. + /// Converts the Dam sensorType to input sensorType. /// /// Type of the sensor. /// sensorType as integer @@ -1784,11 +1784,11 @@ } /// - /// Converts the Dam DataSourceTypeSensors to input DataSourceTypeSensors. + /// Converts the Dam DataSourceTypeSensors to input DataSourceTypeSensors. /// /// The data source type sensors. /// - /// DataSourceTypeSensors + /// DataSourceTypeSensors /// public static DataSourceTypeSensors ConvertToDataSourceTypeSensors(uint dataSourceTypeSensors) { @@ -1808,11 +1808,11 @@ } /// - /// Converts the Dam DataSourceType to input DataSourceType. + /// Converts the Dam DataSourceType to input DataSourceType. /// /// The data source type sensors. /// - /// DataSourceType as integer + /// DataSourceType as integer /// public static uint ConvertToInputDataSourceTypeSensors(DataSourceTypeSensors dataSourceTypeSensors) { @@ -1830,4 +1830,72 @@ }; return translationTable[dataSourceTypeSensors]; } + + /// + /// Converts the soil type. + /// + /// Type of the soil. + /// + public static SoilType ConvertToSoilType(string soilType) + { + var translationTable = new Dictionary + { + { + "Sand", SoilType.Sand + }, + { + "Peat", SoilType.Peat + }, + { + "Loam", SoilType.Loam + }, + { + "Clay", SoilType.Clay + }, + { + "Gravel", SoilType.Gravel + } + }; + return translationTable[soilType]; + } + + /// + /// Converts the shear strength model. + /// + /// Type of the soil. + /// + public static ShearStrengthModel ConvertToShearStrengthModel(string shearStrengthModel) + { + var translationTable = new Dictionary + { + { + "None", ShearStrengthModel.None + }, + { + "C phi", ShearStrengthModel.CPhi + }, + { + "Stress table", ShearStrengthModel.StressTable + }, + { + "Pseudo values", ShearStrengthModel.PseudoValues + }, + { + "Su measured", ShearStrengthModel.CuMeasured + }, + { + "Su calculated", ShearStrengthModel.CuCalculated + }, + { + "Su gradient", ShearStrengthModel.CuGradient + }, + { + "Su calculated with yield", ShearStrengthModel.CuCalculatedYield + }, + { + "C phi or Su calculated", ShearStrengthModel.CPhiOrCuCalculated + } + }; + return translationTable[shearStrengthModel]; + } } \ No newline at end of file Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs =================================================================== diff -u -r4070 -r4143 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs (.../CsvColumnNames.cs) (revision 4070) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs (.../CsvColumnNames.cs) (revision 4143) @@ -22,356 +22,426 @@ namespace Deltares.Dam.Data.Importers; /// -/// Defines column name definitions used for importing csv data +/// Defines column name definitions used for importing csv data /// /// -/// Some of the definitions are used (referenced) in the LocationPropertyImporter. -/// Changing the definitions will affect the location importers using shapefiles as well!! +/// Some of the definitions are used (referenced) in the LocationPropertyImporter. +/// Changing the definitions will affect the location importers using shapefiles as well!! /// public static class CsvColumnNames { /// - /// location_id + /// location_id /// public const string LocationColumnName = "location_id"; /// - /// location_scenario_id + /// location_scenario_id /// public const string LocationScenarioColumnName = "location_scenario_id"; /// - /// dikering_id + /// dikering_id /// public const string DikeRingColumnName = "dikering_id"; /// - /// surfaceline_id + /// surfaceline_id /// public const string SurfaceLineColumnName = "surfaceline_id"; /// - /// geo_x + /// geo_x /// public const string XValueColumnName = "geo_x"; /// - /// geo_y + /// geo_y /// public const string YValueColumnName = "geo_y"; /// - /// segment_id + /// segment_id /// public const string SegmentColumnName = "segment_id"; /// - /// polderlevel + /// polderlevel /// public const string PolderLevelColumnName = "polderlevel"; /// - /// head_pl2 + /// head_pl2 /// public const string HeadPl2ColumnName = "head_pl2"; /// - /// head_pl3 + /// head_pl3 /// public const string HeadPl3ColumnName = "head_pl3"; /// - /// head_pl4 + /// head_pl4 /// public const string HeadPl4ColumnName = "head_pl4"; /// - /// head_pl3 + /// head_pl3 /// public const string HeadPl3OldFormatColumnName = "HeadPl3"; /// - /// head_pl4 + /// head_pl4 /// public const string HeadPl4OldFormatColumnName = "HeadPl4"; /// - /// x_soilgeometry2D_origin + /// x_soilgeometry2D_origin /// public const string XSoilGeometry2DOriginColumnName = "x_soilgeometry2D_origin"; /// - /// ophoogmateriaaldijk + /// ophoogmateriaaldijk /// public const string DikeEmbankmentMaterialColumnName = "ophoogmateriaaldijk"; /// - /// ophoogmateriaalberm + /// ophoogmateriaalberm /// public const string ShoulderEmbankmentMaterialColumnName = "ophoogmateriaalberm"; /// - /// dempingsfactor_pl3 + /// dempingsfactor_pl3 /// public const string DampingFactorPl3ColumnName = "dempingsfactor_pl3"; /// - /// dempingsfactor_pl4 + /// dempingsfactor_pl4 /// public const string DampingFactorPl4ColumnName = "dempingsfactor_pl4"; /// - /// PenetrationLength + /// PenetrationLength /// public const string PenetrationLengthColumnName = "PenetrationLength"; /// - /// TrafficLoad + /// TrafficLoad /// public const string TrafficLoadColumnName = "TrafficLoad"; /// - /// TL_DegreeOfConsolidation + /// TL_DegreeOfConsolidation /// public const string TlDegreeOfConsolidationColumnName = "TL_DegreeOfConsolidation"; /// - /// PLLineCreationMethod + /// PLLineCreationMethod /// public const string PlLineCreationMethodColumnName = "PLLineCreationMethod"; /// - /// PlLineOffsetBelowDikeTopAtRiver + /// PlLineOffsetBelowDikeTopAtRiver /// public const string PlLineOffsetBelowDikeTopAtRiverColumnName = "PlLineOffsetBelowDikeTopAtRiver"; /// - /// PlLineOffsetBelowDikeTopAtPolder + /// PlLineOffsetBelowDikeTopAtPolder /// public const string PlLineOffsetBelowDikeTopAtPolderColumnName = "PlLineOffsetBelowDikeTopAtPolder"; /// - /// PlLineOffsetBelowShoulderBaseInside + /// PlLineOffsetBelowShoulderBaseInside /// public const string PlLineOffsetBelowShoulderBaseInsideColumnName = "PlLineOffsetBelowShoulderBaseInside"; /// - /// PlLineOffsetBelowDikeToeAtPolder + /// PlLineOffsetBelowDikeToeAtPolder /// public const string PlLineOffsetBelowDikeToeAtPolderColumnName = "PlLineOffsetBelowDikeToeAtPolder"; /// - /// The pl line offset below dike crest middle + /// The pl line offset below dike crest middle /// public const string PlLineOffsetBelowDikeCrestMiddleColumnName = "PLLineOffsetBelowDikeCrestMiddle"; /// - /// The pl line offset factor below shoulder crest + /// The pl line offset factor below shoulder crest /// public const string PlLineOffsetFactorBelowShoulderCrestColumnName = "PLLineOffsetFactorBelowShoulderCrest"; /// - /// Use the pl line offset below dike crest middle + /// Use the pl line offset below dike crest middle /// public const string UsePlLineOffsetBelowDikeCrestMiddleColumnName = "UsePLLineOffsetBelowDikeCrestMiddle"; /// - /// Use the pl line offset factor below shoulder crest + /// Use the pl line offset factor below shoulder crest /// public const string UsePlLineOffsetFactorBelowShoulderCrestColumnName = "UsePLLineOffsetFactorBelowShoulderCrest"; /// - /// The intrusion vertical water pressure + /// The intrusion vertical water pressure /// public const string IntrusionVerticalWaterPressureColumnName = "IntrusionVerticalWaterPressure"; /// - /// StabilityShoulderGrowSlope + /// StabilityShoulderGrowSlope /// public const string StabilityShoulderGrowSlopeColumnName = "StabilityShoulderGrowSlope"; /// - /// StabilityShoulderGrowDeltaX + /// StabilityShoulderGrowDeltaX /// public const string StabilityShoulderGrowDeltaXColumnName = "StabilityShoulderGrowDeltaX"; /// - /// StabilitySlopeAdaptionDeltaX + /// StabilitySlopeAdaptionDeltaX /// public const string StabilitySlopeAdaptionDeltaXColumnName = "StabilitySlopeAdaptionDeltaX"; /// - /// minimal_circle_depth + /// minimal_circle_depth /// public const string MinimalCircleDepthColumnName = "minimal_circle_depth"; /// - /// distance_to_entry_point + /// distance_to_entry_point /// public const string DistanceToEntryPointColumnName = "distance_to_entry_point"; /// - /// Stability Design Method + /// Stability Design Method /// public const string StabilityDesignMethodColumnName = "StabilityDesignMethod"; /// - /// Start value (cotangent) for slope adaption by angle + /// Start value (cotangent) for slope adaption by angle /// public const string SlopeAdaptionStartCotangentColumnName = "SlopeAdaptionStartCotangent"; /// - /// End value (cotangent) for slope adaption by angle + /// End value (cotangent) for slope adaption by angle /// public const string SlopeAdaptionEndCotangentColumnName = "SlopeAdaptionEndCotangent"; /// - /// Step size (cotangent) for slope adaption by angle + /// Step size (cotangent) for slope adaption by angle /// public const string SlopeAdaptionStepCotangentColumnName = "SlopeAdaptionStepCotangent"; /// - /// Slope damping piezometric height polderside + /// Slope damping piezometric height polderside /// public const string SlopeDampingPiezometricHeightPolderSideColumnName = "SlopeDampingPiezometricHeightPolderSide"; /// - /// safety_factor_stability_inner_slope + /// safety_factor_stability_inner_slope /// public const string RequiredSafetyFactorStabilityInnerSlopeColumnName = ModelFactorCsvIdentifiers.SafetyFactorStabilityInnerslope; /// - /// safety_factor_stability_outer_slope + /// safety_factor_stability_outer_slope /// public const string RequiredSafetyFactorStabilityOuterSlopeColumnName = ModelFactorCsvIdentifiers.SafetyFactorStabilityOuterslope; /// - /// safety_factor_piping + /// safety_factor_piping /// public const string RequiredSafetyFactorPipingColumnName = ModelFactorCsvIdentifiers.SafetyFactorPiping; /// - /// uplift_criterion_piping + /// uplift_criterion_piping /// public const string UpliftCriterionPipingColumnName = ModelFactorCsvIdentifiers.UpliftCriterionPiping; /// - /// uplift_criterion_stability + /// uplift_criterion_stability /// public const string UpliftCriterionStabilityColumnName = ModelFactorCsvIdentifiers.UpliftCriterionStability; /// - /// Zone type + /// Zone type /// public const string ZoneTypeColumnName = "ZoneType"; /// - /// ForbiddenZoneFactor + /// ForbiddenZoneFactor /// public const string ForbiddenZoneFactorColumnName = "ForbiddenZoneFactor"; /// - /// NewDikeTopWidth + /// NewDikeTopWidth /// public const string NewDikeTopWidthColumnName = "NewDikeTopWidth"; /// - /// UseNewDikeTopWidth + /// UseNewDikeTopWidth /// public const string UseNewDikeTopWidthColumnName = "UseNewDikeTopWidth"; /// - /// NewDikeSlopeInside + /// NewDikeSlopeInside /// public const string NewDikeSlopeInsideColumnName = "NewDikeSlopeInside"; /// - /// UseNewDikeSlopeInside + /// UseNewDikeSlopeInside /// public const string UseNewDikeSlopeInsideColumnName = "UseNewDikeSlopeInside"; /// - /// NewDikeSlopeOutside + /// NewDikeSlopeOutside /// public const string NewDikeSlopeOutsideColumnName = "NewDikeSlopeOutside"; /// - /// UseNewDikeSlopeOutside + /// UseNewDikeSlopeOutside /// public const string UseNewDikeSlopeOutsideColumnName = "UseNewDikeSlopeOutside"; /// - /// NewShoulderTopSlope + /// NewShoulderTopSlope /// public const string NewShoulderTopSlopeColumnName = "NewShoulderTopSlope"; /// - /// UseNewShoulderTopSlope + /// UseNewShoulderTopSlope /// public const string UseNewShoulderTopSlopeColumnName = "UseNewShoulderTopSlope"; /// - /// NewShoulderBaseSlope + /// NewShoulderBaseSlope /// public const string NewShoulderBaseSlopeColumnName = "NewShoulderBaseSlope"; /// - /// UseNewShoulderBaseSlope + /// UseNewShoulderBaseSlope /// public const string UseNewShoulderBaseSlopeColumnName = "UseNewShoulderBaseSlope"; /// - /// NewMaxHeightShoulderAsFraction + /// NewMaxHeightShoulderAsFraction /// public const string NewMaxHeightShoulderAsFractionColumnName = "NewMaxHeightShoulderAsFraction"; /// - /// UseNewMaxHeightShoulderAsFraction + /// UseNewMaxHeightShoulderAsFraction /// public const string UseNewMaxHeightShoulderAsFractionColumnName = "UseNewMaxHeightShoulderAsFraction"; /// - /// NewMinDistanceDikeToeStartDitch + /// NewMinDistanceDikeToeStartDitch /// public const string NewMinDistanceDikeToeStartDitchColumnName = "NewMinDistanceDikeToeStartDitch"; /// - /// UseNewMinDistanceDikeToeStartDitch + /// UseNewMinDistanceDikeToeStartDitch /// public const string UseNewMinDistanceDikeToeStartDitchColumnName = "UseNewMinDistanceDikeToeStartDitch"; /// - /// UseNewDitchDefinition + /// UseNewDitchDefinition /// public const string UseNewDitchDefinitionColumnName = "UseNewDitchDefinition"; /// - /// NewWidthDitchBottom + /// NewWidthDitchBottom /// public const string NewWidthDitchBottomColumnName = "NewWidthDitchBottom"; /// - /// newSlopeAngleDitch + /// newSlopeAngleDitch /// public const string NewSlopeAngleDitchColumnName = "newSlopeAngleDitch"; /// - /// NewDepthDitch + /// NewDepthDitch /// public const string NewDepthDitchColumnName = "NewDepthDitch"; /// - /// DikeTableHeight + /// DikeTableHeight /// public const string DikeTableHeightColumnName = "dike_table_height"; /// - /// water_height + /// water_height /// public const string RiverLevelColumnName = "water_height"; /// - /// water_height_low + /// water_height_low /// public const string RiverLevelLowColumnName = "water_height_low"; + + /// + /// soil_name + /// + public const string SoilNameColumnName = "soil_name"; + + /// + /// soil_color + /// + public const string SoilColorColumnName = "soil_color"; + + /// + /// soil_type + /// + public const string SoilTypeColumnName = "soil_type"; + + /// + /// saturated_unit_weight + /// + public const string SaturatedUnitWeightColumnName = "saturated_unit_weight"; + + /// + /// unsaturated_unit_weight + /// + public const string UnsaturatedUnitWeightColumnName = "unsaturated_unit_weight"; + + /// + /// cohesion + /// + public const string CohesionColumnName = "cohesion"; + + /// + /// friction_angle + /// + public const string FrictionAngleColumnName = "friction_angle"; + + /// + /// diameter_d70 + /// + public const string DiameterD70ColumnName = "diameter_d70"; + + /// + /// permeability_x + /// + public const string PermeabilityXColumnName = "permeability_x"; + + /// + /// shear_strength_model + /// + public const string ShearStrengthModelColumnName = "shear_strength_model"; + + /// + /// strength_increase_exponent + /// + public const string StrengthIncreaseExponentColumnName = "strength_increase_exponent"; + + /// + /// ratio_su_pc + /// + public const string RatioSuPcColumnName = "ratio_su_pc"; + + /// + /// use_pop + /// + public const string UsePopColumnName = "use_pop"; + + /// + /// pop + /// + public const string PopColumnName = "pop"; } \ No newline at end of file Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs =================================================================== diff -u -r4070 -r4143 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 4070) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 4143) @@ -21,1076 +21,1153 @@ using System; using System.Collections.Generic; +using System.Drawing; using System.IO; using Deltares.Dam.Data; using Deltares.Dam.Data.CsvImporters; +using Deltares.Geotechnics.Soils; using Deltares.Standard.EventPublisher; using NUnit.Framework; -namespace Deltares.Dam.Tests +namespace Deltares.Dam.Tests; + +[TestFixture] +public class CsvImporterTestsNew { - [TestFixture] - public class CsvImporterTestsNew + private string importFolder; + + /// + /// Setup for whole testfixture + /// + [SetUp] + public void FixtureSetup() { - private string importFolder; + importFolder = Path.Combine(Directory.GetCurrentDirectory(), "TmpImportFiles"); + } - /// - /// Setup for whole testfixture - /// - [SetUp] - public void FixtureSetup() + /// + /// Setup for single test + /// + [SetUp] + public void Setup() + { + if (!Directory.Exists(importFolder)) { - importFolder = Path.Combine(Directory.GetCurrentDirectory(), "TmpImportFiles"); + Directory.CreateDirectory(importFolder); } + } - /// - /// Setup for single test - /// - [SetUp] - public void Setup() - { - if (!Directory.Exists(importFolder)) - { - Directory.CreateDirectory(importFolder); - } - } + [Test] + public void SegmentImporterThrowsArgumentExceptionWhenFileNameIsEmpty() + { + Assert.That(() => new CsvImporterSegments(""), Throws.ArgumentException); + } - [Test] - public void SegmentImporterThrowsArgumentExceptionWhenFileNameIsEmpty() - { - Assert.That(() => new CsvImporterSegments(""), Throws.ArgumentException); - } + [Test] + public void SegmentImporterThrowsArgumentExceptionWhenFileDoesNotExist() + { + Assert.That(() => new CsvImporterSegments("bla45se%"), Throws.InstanceOf()); + } - [Test] - public void SegmentImporterThrowsArgumentExceptionWhenFileDoesNotExist() + [Test] + public void SegmentImporter1DProfileTest() + { + const string importFile = "segments.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) { - Assert.That(() => new CsvImporterSegments("bla45se%"), Throws.InstanceOf()); + File.Delete(testFilePath); } - [Test] - public void SegmentImporter1DProfileTest() - { - const string importFile = "segments.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSegmentsFor1DProfilesFile(testFilePath); + var csvImporterSegments = new CsvImporterSegments(testFilePath); + IList segmentRecords = csvImporterSegments.ImportedItems; - CreateSegmentsFor1DProfilesFile(testFilePath); - var csvImporterSegments = new CsvImporterSegments(testFilePath); - IList segmentRecords = csvImporterSegments.ImportedItems; + Assert.AreEqual("1", segmentRecords[0].SegmentId); + Assert.AreEqual("1DP1", segmentRecords[0].SoilProfileId); + Assert.AreEqual(80, segmentRecords[0].Probability); + Assert.AreEqual(FailureMechanismSystemType.StabilityInside, segmentRecords[0].SegmentFailureMechanismType); - Assert.AreEqual("1", segmentRecords[0].SegmentId); - Assert.AreEqual("1DP1", segmentRecords[0].SoilProfileId); - Assert.AreEqual(80, segmentRecords[0].Probability); - Assert.AreEqual(FailureMechanismSystemType.StabilityInside, segmentRecords[0].SegmentFailureMechanismType); + Assert.AreEqual("1", segmentRecords[1].SegmentId); + Assert.AreEqual("1", segmentRecords[2].SegmentId); + Assert.AreEqual("2", segmentRecords[3].SegmentId); + Assert.AreEqual("2", segmentRecords[4].SegmentId); + Assert.AreEqual("1DP1", segmentRecords[4].SoilProfileId); + Assert.AreEqual(100, segmentRecords[4].Probability); + Assert.AreEqual(FailureMechanismSystemType.Piping, segmentRecords[4].SegmentFailureMechanismType); + } - Assert.AreEqual("1", segmentRecords[1].SegmentId); - Assert.AreEqual("1", segmentRecords[2].SegmentId); - Assert.AreEqual("2", segmentRecords[3].SegmentId); - Assert.AreEqual("2", segmentRecords[4].SegmentId); - Assert.AreEqual("1DP1", segmentRecords[4].SoilProfileId); - Assert.AreEqual(100, segmentRecords[4].Probability); - Assert.AreEqual(FailureMechanismSystemType.Piping, segmentRecords[4].SegmentFailureMechanismType); + [Test] + public void SegmentImporter2DGeometriesTest() + { + const string importFile = "segments.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SegmentImporter2DGeometriesTest() - { - const string importFile = "segments.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSegmentsFor2DGeometriesFile(testFilePath); + var csvImporterSegments = new CsvImporterSegments(testFilePath); + IList segmentRecords = csvImporterSegments.ImportedItems; - CreateSegmentsFor2DGeometriesFile(testFilePath); - var csvImporterSegments = new CsvImporterSegments(testFilePath); - IList segmentRecords = csvImporterSegments.ImportedItems; + Assert.AreEqual("1", segmentRecords[0].SegmentId); + Assert.AreEqual("GeomA", segmentRecords[0].SoilGeometry2DName); + Assert.AreEqual(80, segmentRecords[0].Probability); + Assert.AreEqual(FailureMechanismSystemType.StabilityInside, segmentRecords[0].SegmentFailureMechanismType); - Assert.AreEqual("1", segmentRecords[0].SegmentId); - Assert.AreEqual("GeomA", segmentRecords[0].SoilGeometry2DName); - Assert.AreEqual(80, segmentRecords[0].Probability); - Assert.AreEqual(FailureMechanismSystemType.StabilityInside, segmentRecords[0].SegmentFailureMechanismType); + Assert.AreEqual("2", segmentRecords[1].SegmentId); + Assert.AreEqual("GeomB", segmentRecords[1].SoilGeometry2DName); + Assert.AreEqual(20, segmentRecords[1].Probability); + Assert.AreEqual(FailureMechanismSystemType.Piping, segmentRecords[1].SegmentFailureMechanismType); + } - Assert.AreEqual("2", segmentRecords[1].SegmentId); - Assert.AreEqual("GeomB", segmentRecords[1].SoilGeometry2DName); - Assert.AreEqual(20, segmentRecords[1].Probability); - Assert.AreEqual(FailureMechanismSystemType.Piping, segmentRecords[1].SegmentFailureMechanismType); + [Test] + public void SegmentImporterIllegalHeaderTest() + { + const string importFile = "segments.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SegmentImporterIllegalHeaderTest() - { - const string importFile = "segments.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSegmentsFileWithIllegalHeader(testFilePath); + Assert.That(() => new CsvImporterSegments(testFilePath), Throws.InstanceOf()); + } - CreateSegmentsFileWithIllegalHeader(testFilePath); - Assert.That(() => new CsvImporterSegments(testFilePath), Throws.InstanceOf()); + [Test] + public void SoilProfilesImporterFileWithObsoleteColumnTest() + { + const string importFile = "soilprofiles.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SoilProfilesImporterFileWithObsoleteColumnTest() - { - const string importFile = "soilprofiles.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSoilProfilesFileWithObsoleteColumns(testFilePath); + var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testFilePath); + IList soilProfileRecords = csvImporterSoilProfiles.ImportedItems; - CreateSoilProfilesFileWithObsoleteColumns(testFilePath); - var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testFilePath); - IList soilProfileRecords = csvImporterSoilProfiles.ImportedItems; + Assert.AreEqual("1DP1", soilProfileRecords[0].SoilProfileId); + Assert.AreEqual(10, soilProfileRecords[0].TopLevel); + Assert.AreEqual("HW-OBO", soilProfileRecords[0].SoilName); - Assert.AreEqual("1DP1", soilProfileRecords[0].SoilProfileId); - Assert.AreEqual(10, soilProfileRecords[0].TopLevel); - Assert.AreEqual("HW-OBO", soilProfileRecords[0].SoilName); + Assert.AreEqual("1DP1", soilProfileRecords[1].SoilProfileId); + Assert.AreEqual(-0.6, soilProfileRecords[1].TopLevel); + Assert.AreEqual("HW-DUN", soilProfileRecords[1].SoilName); - Assert.AreEqual("1DP1", soilProfileRecords[1].SoilProfileId); - Assert.AreEqual(-0.6, soilProfileRecords[1].TopLevel); - Assert.AreEqual("HW-DUN", soilProfileRecords[1].SoilName); + Assert.AreEqual("1DP2", soilProfileRecords[11].SoilProfileId); + Assert.AreEqual(-5.3, soilProfileRecords[11].TopLevel); + Assert.AreEqual("Alg-zand (0-30)", soilProfileRecords[11].SoilName); + } - Assert.AreEqual("1DP2", soilProfileRecords[11].SoilProfileId); - Assert.AreEqual(-5.3, soilProfileRecords[11].TopLevel); - Assert.AreEqual("Alg-zand (0-30)", soilProfileRecords[11].SoilName); + [Test] + public void SoilProfilesImporterCorrectFileTest() + { + const string importFile = "soilprofiles.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SoilProfilesImporterCorrectFileTest() - { - const string importFile = "soilprofiles.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSoilProfilesFile(testFilePath); + var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testFilePath); + IList soilProfileRecords = csvImporterSoilProfiles.ImportedItems; - CreateSoilProfilesFile(testFilePath); - var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testFilePath); - IList soilProfileRecords = csvImporterSoilProfiles.ImportedItems; + Assert.AreEqual("1DP1", soilProfileRecords[0].SoilProfileId); + Assert.AreEqual(10, soilProfileRecords[0].TopLevel); + Assert.AreEqual("HW-OBO", soilProfileRecords[0].SoilName); - Assert.AreEqual("1DP1", soilProfileRecords[0].SoilProfileId); - Assert.AreEqual(10, soilProfileRecords[0].TopLevel); - Assert.AreEqual("HW-OBO", soilProfileRecords[0].SoilName); + Assert.AreEqual("1DP1", soilProfileRecords[1].SoilProfileId); + Assert.AreEqual(-0.6, soilProfileRecords[1].TopLevel); + Assert.AreEqual("HW-DUN", soilProfileRecords[1].SoilName); - Assert.AreEqual("1DP1", soilProfileRecords[1].SoilProfileId); - Assert.AreEqual(-0.6, soilProfileRecords[1].TopLevel); - Assert.AreEqual("HW-DUN", soilProfileRecords[1].SoilName); + Assert.AreEqual("1DP2", soilProfileRecords[11].SoilProfileId); + Assert.AreEqual(-5.3, soilProfileRecords[11].TopLevel); + Assert.AreEqual("Alg-zand (0-30)", soilProfileRecords[11].SoilName); + } - Assert.AreEqual("1DP2", soilProfileRecords[11].SoilProfileId); - Assert.AreEqual(-5.3, soilProfileRecords[11].TopLevel); - Assert.AreEqual("Alg-zand (0-30)", soilProfileRecords[11].SoilName); + [Test] + public void SoilProfilesImporterIllegalHeaderTest() + { + const string importFile = "soilprofiles.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SoilProfilesImporterIllegalHeaderTest() - { - const string importFile = "soilprofiles.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSoilProfilesFileWithIllegalHeader(testFilePath); + Assert.That(() => new CsvImporterSoilProfiles(testFilePath), Throws.InstanceOf()); + } - CreateSoilProfilesFileWithIllegalHeader(testFilePath); - Assert.That(() => new CsvImporterSoilProfiles(testFilePath), Throws.InstanceOf()); + [Test] + public void SoilProfilesImporterMissingHeaderFieldTest() + { + const string importFile = "soilprofiles.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SoilProfilesImporterMissingHeaderFieldTest() - { - const string importFile = "soilprofiles.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSoilProfilesFileWithIllegalHeaderField(testFilePath); + Assert.That(() => new CsvImporterSoilProfiles(testFilePath), Throws.InstanceOf()); + } - CreateSoilProfilesFileWithIllegalHeaderField(testFilePath); - Assert.That(() => new CsvImporterSoilProfiles(testFilePath), Throws.InstanceOf()); + [Test] + public void CharacteristicPointsImporterCorrectFileTest() + { + const string importFile = "characteristicpoints.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void CharacteristicPointsImporterCorrectFileTest() - { - const string importFile = "characteristicpoints.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateCharacteristicPointsFile(testFilePath); + var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testFilePath); + IList characteristicPointsRecords = csvImporterCharacteristicPoints.ImportedItems; + CheckCharacteristicPoints(characteristicPointsRecords); + } - CreateCharacteristicPointsFile(testFilePath); - var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testFilePath); - IList characteristicPointsRecords = csvImporterCharacteristicPoints.ImportedItems; - CheckCharacteristicPoints(characteristicPointsRecords); + [Test] + public void CharacteristicPointsWithLocationIdImporterCorrectFileTest() + { + const string importFile = "characteristicpoints.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void CharacteristicPointsWithLocationIdImporterCorrectFileTest() - { - const string importFile = "characteristicpoints.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateCharacteristicPointsFileWithLocationId(testFilePath); + var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testFilePath); + IList characteristicPointsRecords = csvImporterCharacteristicPoints.ImportedItems; + CheckCharacteristicPoints(characteristicPointsRecords); + } - CreateCharacteristicPointsFileWithLocationId(testFilePath); - var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testFilePath); - IList characteristicPointsRecords = csvImporterCharacteristicPoints.ImportedItems; - CheckCharacteristicPoints(characteristicPointsRecords); + [Test] + public void CharacteristicPointsImporterIllegalHeaderTest() + { + const string importFile = "characteristicpoints.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void CharacteristicPointsImporterIllegalHeaderTest() - { - const string importFile = "characteristicpoints.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateCharacteristicPointsFileWithIllegalHeader(testFilePath); + Assert.That(() => new CsvImporterCharacteristicPoints(testFilePath), Throws.InstanceOf()); + } - CreateCharacteristicPointsFileWithIllegalHeader(testFilePath); - Assert.That(() => new CsvImporterCharacteristicPoints(testFilePath), Throws.InstanceOf()); + [Test] + public void SurfaceLinesImporterCorrectFileTest() + { + const string importFile = "surfacelines.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SurfaceLinesImporterCorrectFileTest() - { - const string importFile = "surfacelines.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSurfaceLinesFile(testFilePath); + var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); + IList surfaceLineRecords = csvImporterSurfaceLines.ImportedItems; - CreateSurfaceLinesFile(testFilePath); - var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); - IList surfaceLineRecords = csvImporterSurfaceLines.ImportedItems; + CheckSurfaceLine(surfaceLineRecords); + } - CheckSurfaceLine(surfaceLineRecords); + [Test] + public void SurfaceLinesWithLocationIdImporterCorrectFileTest() + { + const string importFile = "surfacelines.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SurfaceLinesWithLocationIdImporterCorrectFileTest() - { - const string importFile = "surfacelines.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSurfaceLinesFileWithLocationId(testFilePath); + var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); + IList surfaceLineRecords = csvImporterSurfaceLines.ImportedItems; - CreateSurfaceLinesFileWithLocationId(testFilePath); - var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); - IList surfaceLineRecords = csvImporterSurfaceLines.ImportedItems; + CheckSurfaceLine(surfaceLineRecords); + } - CheckSurfaceLine(surfaceLineRecords); + [Test] + public void SurfaceLinesImporterIllegalHeaderTest() + { + const string importFile = "surfacelines.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SurfaceLinesImporterIllegalHeaderTest() - { - const string importFile = "surfacelines.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSurfaceLinesFileWithIllegalHeaders(testFilePath); + Assert.That(() => new CsvImporterSurfaceLines(testFilePath), Throws.InstanceOf()); + } - CreateSurfaceLinesFileWithIllegalHeaders(testFilePath); - Assert.That(() => new CsvImporterSurfaceLines(testFilePath), Throws.InstanceOf()); + [Test] + public void SurfaceLinesImporterIllegalValuesTest() + { + const string importFile = "surfacelines.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void SurfaceLinesImporterIllegalValuesTest() - { - const string importFile = "surfacelines.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateSurfaceLinesFileWithIllegalValues(testFilePath); + var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); + Assert.AreEqual(1, csvImporterSurfaceLines.ErrorMessages.Count); + } - CreateSurfaceLinesFileWithIllegalValues(testFilePath); - var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testFilePath); - Assert.AreEqual(1, csvImporterSurfaceLines.ErrorMessages.Count); + [Test] + public void LocationImporterCorrectFileTest() + { + const double tolerance = 0.001; + const string importFile = "locations.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void LocationImporterCorrectFileTest() - { - const double tolerance = 0.001; - const string importFile = "locations.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateLocationsFileWithObsoleteColumn(testFilePath); + var csvImporterLocations = new CsvImporterLocations(testFilePath); + IList locationRecords = csvImporterLocations.ImportedItems; + Assert.That(locationRecords.Count, Is.EqualTo(2)); + Assert.That(locationRecords[1].LocationId, Is.EqualTo("25-2-2-A-1-A")); + Assert.That(locationRecords[1].SurfaceLineId, Is.EqualTo("25-2-2-A-1-A")); + Assert.That(locationRecords[1].SegmentId, Is.EqualTo("106")); + Assert.That(locationRecords[1].GeoX, Is.EqualTo(66586.0).Within(tolerance)); + Assert.That(locationRecords[1].GeoY, Is.EqualTo(424173.0).Within(tolerance)); + Assert.That(locationRecords[1].XSoilGeometry2DOrigin, Is.EqualTo(2.0).Within(tolerance)); + Assert.That(locationRecords[1].PolderLevel, Is.EqualTo(-0.25).Within(tolerance)); + Assert.That(locationRecords[1].HeadPl2.Value, Is.EqualTo(0.8727).Within(tolerance)); + Assert.That(locationRecords[0].HeadPl3.Value, Is.EqualTo(0.9).Within(tolerance)); + Assert.That(locationRecords[0].HeadPl4.Value, Is.EqualTo(0.8).Within(tolerance)); + Assert.That(locationRecords[1].DikeEmbankmentMaterial, Is.EqualTo("klei")); + Assert.That(locationRecords[1].ShoulderEmbankmentMaterial, Is.EqualTo("klei2")); + Assert.That(locationRecords[1].PenetrationLength, Is.EqualTo(1.3).Within(tolerance)); + Assert.That(locationRecords[1].TrafficLoad, Is.EqualTo(10).Within(tolerance)); + Assert.That(locationRecords[0].TL_DegreeOfConsolidation, Is.EqualTo(10.1).Within(tolerance)); + Assert.That(locationRecords[1].TL_DegreeOfConsolidation, Is.EqualTo(55.5).Within(tolerance)); + Assert.That(locationRecords[1].MinimalCircleDepth, Is.EqualTo(1.5).Within(tolerance)); + Assert.That(locationRecords[1].DampingFactorPl3, Is.EqualTo(30.0).Within(tolerance)); + Assert.That(locationRecords[1].DampingFactorPl4, Is.EqualTo(40.0).Within(tolerance)); + Assert.That(locationRecords[1].PLLineCreationMethod, Is.EqualTo(PLLineCreationMethod.ExpertKnowledgeRRD)); + Assert.That(locationRecords[1].RequiredSafetyFactorPiping, Is.EqualTo(1.2).Within(tolerance)); + Assert.That(locationRecords[1].RequiredSafetyFactorStabilityInnerSlope, Is.EqualTo(1.3).Within(tolerance)); + Assert.That(locationRecords[1].RequiredSafetyFactorStabilityOuterSlope, Is.EqualTo(1.4).Within(tolerance)); + Assert.That(locationRecords[1].UpliftCriterionPiping, Is.EqualTo(1.1).Within(tolerance)); + Assert.That(locationRecords[1].UpliftCriterionStability, Is.EqualTo(1.2).Within(tolerance)); + Assert.That(locationRecords[1].DistanceToEntryPoint, Is.EqualTo(2.1).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetBelowDikeTopAtRiver, Is.EqualTo(0.5).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetBelowDikeTopAtPolder, Is.EqualTo(0.6).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetBelowShoulderBaseInside, Is.EqualTo(0.1).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetBelowDikeToeAtPolder, Is.EqualTo(0.2).Within(tolerance)); + Assert.That(locationRecords[1].StabilityShoulderGrowSlope, Is.EqualTo(2.0).Within(tolerance)); + Assert.That(locationRecords[1].StabilityShoulderGrowDeltaX, Is.EqualTo(0.2).Within(tolerance)); + Assert.That(locationRecords[1].StabilitySlopeAdaptionDeltaX, Is.EqualTo(0.5).Within(tolerance)); + Assert.That(locationRecords[0].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.01).Within(tolerance)); + Assert.That(locationRecords[1].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.2).Within(tolerance)); + Assert.That(locationRecords[0].StabilityDesignMethod, Is.EqualTo(StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)); + Assert.That(locationRecords[1].StabilityDesignMethod, Is.EqualTo(StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)); + Assert.That(locationRecords[0].SlopeAdaptionStartCotangent, Is.EqualTo(3.0).Within(tolerance)); + Assert.That(locationRecords[0].SlopeAdaptionEndCotangent, Is.EqualTo(6.0).Within(tolerance)); + Assert.That(locationRecords[0].SlopeAdaptionStepCotangent, Is.EqualTo(0.5).Within(tolerance)); + Assert.That(locationRecords[1].SlopeAdaptionStartCotangent, Is.EqualTo(4.5).Within(tolerance)); + Assert.That(locationRecords[1].SlopeAdaptionEndCotangent, Is.EqualTo(6.5).Within(tolerance)); + Assert.That(locationRecords[1].SlopeAdaptionStepCotangent, Is.EqualTo(0.25).Within(tolerance)); + Assert.That(locationRecords[0].UseNewDikeTopWidth, Is.True); + Assert.That(locationRecords[0].NewDikeTopWidth, Is.EqualTo(1.8).Within(tolerance)); + Assert.That(locationRecords[1].UseNewDikeTopWidth, Is.False); + Assert.That(locationRecords[1].NewDikeTopWidth, Is.EqualTo(0.8).Within(tolerance)); + Assert.That(locationRecords[0].UseNewDikeSlopeInside, Is.True); + Assert.That(locationRecords[0].NewDikeSlopeInside, Is.EqualTo(1.9).Within(tolerance)); + Assert.That(locationRecords[1].UseNewDikeSlopeInside, Is.False); + Assert.That(locationRecords[1].NewDikeSlopeInside, Is.EqualTo(0.9).Within(tolerance)); + Assert.That(locationRecords[0].UseNewDikeSlopeOutside, Is.True); + Assert.That(locationRecords[0].NewDikeSlopeOutside, Is.EqualTo(2.9).Within(tolerance)); + Assert.That(locationRecords[1].UseNewDikeSlopeOutside, Is.False); + Assert.That(locationRecords[1].NewDikeSlopeOutside, Is.EqualTo(1.9).Within(tolerance)); + Assert.That(locationRecords[0].UseNewShoulderTopSlope, Is.True); + Assert.That(locationRecords[0].NewShoulderTopSlope, Is.EqualTo(2.8).Within(tolerance)); + Assert.That(locationRecords[1].UseNewShoulderTopSlope, Is.False); + Assert.That(locationRecords[1].NewShoulderTopSlope, Is.EqualTo(1.8).Within(tolerance)); + Assert.That(locationRecords[0].UseNewShoulderBaseSlope, Is.True); + Assert.That(locationRecords[0].NewShoulderBaseSlope, Is.EqualTo(2.7).Within(tolerance)); + Assert.That(locationRecords[1].UseNewShoulderBaseSlope, Is.False); + Assert.That(locationRecords[1].NewShoulderBaseSlope, Is.EqualTo(1.7).Within(tolerance)); + Assert.That(locationRecords[0].UseNewMaxHeightShoulderAsFraction, Is.True); + Assert.That(locationRecords[0].NewMaxHeightShoulderAsFraction, Is.EqualTo(0.6).Within(tolerance)); + Assert.That(locationRecords[1].UseNewMaxHeightShoulderAsFraction, Is.False); + Assert.That(locationRecords[1].NewMaxHeightShoulderAsFraction, Is.EqualTo(0.7).Within(tolerance)); + Assert.That(locationRecords[0].UseNewMinDistanceDikeToeStartDitch, Is.True); + Assert.That(locationRecords[0].NewMinDistanceDikeToeStartDitch, Is.EqualTo(2.6).Within(tolerance)); + Assert.That(locationRecords[1].UseNewMinDistanceDikeToeStartDitch, Is.False); + Assert.That(locationRecords[1].NewMinDistanceDikeToeStartDitch, Is.EqualTo(1.6).Within(tolerance)); + Assert.That(locationRecords[0].UseNewDitchDefinition, Is.True); + Assert.That(locationRecords[0].NewWidthDitchBottom, Is.EqualTo(1.1).Within(tolerance)); + Assert.That(locationRecords[0].NewSlopeAngleDitch, Is.EqualTo(1.2).Within(tolerance)); + Assert.That(locationRecords[0].NewDepthDitch, Is.EqualTo(1.3).Within(tolerance)); + Assert.That(locationRecords[1].UseNewDitchDefinition, Is.False); + Assert.That(locationRecords[1].NewWidthDitchBottom, Is.EqualTo(1.4).Within(tolerance)); + Assert.That(locationRecords[1].NewSlopeAngleDitch, Is.EqualTo(1.5).Within(tolerance)); + Assert.That(locationRecords[1].NewDepthDitch, Is.EqualTo(1.6).Within(tolerance)); + Assert.That(locationRecords[0].StabilityZoneType, Is.EqualTo(MStabZonesType.NoZones)); + Assert.That(locationRecords[1].StabilityZoneType, Is.EqualTo(MStabZonesType.ForbiddenZone)); + Assert.That(locationRecords[0].ForbiddenZoneFactor, Is.EqualTo(0.5).Within(tolerance)); + Assert.That(locationRecords[1].ForbiddenZoneFactor, Is.EqualTo(0.9).Within(tolerance)); + Assert.That(locationRecords[0].PlLineOffsetBelowDikeCrestMiddle, Is.EqualTo(1.0).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetBelowDikeCrestMiddle, Is.EqualTo(1.1).Within(tolerance)); + Assert.That(locationRecords[0].UsePlLineOffsetBelowDikeCrestMiddle, Is.Null); + Assert.That(locationRecords[1].UsePlLineOffsetBelowDikeCrestMiddle, Is.Null); + Assert.That(locationRecords[0].PlLineOffsetFactorBelowShoulderCrest, Is.EqualTo(0.1).Within(tolerance)); + Assert.That(locationRecords[1].PlLineOffsetFactorBelowShoulderCrest, Is.EqualTo(0.11).Within(tolerance)); + Assert.That(locationRecords[0].UsePlLineOffsetFactorBelowShoulderCrest, Is.Null); + Assert.That(locationRecords[1].UsePlLineOffsetFactorBelowShoulderCrest, Is.Null); + Assert.That(locationRecords[0].IntrusionVerticalWaterPressure, Is.EqualTo(IntrusionVerticalWaterPressureType.Standard)); + Assert.That(locationRecords[1].IntrusionVerticalWaterPressure, Is.EqualTo(IntrusionVerticalWaterPressureType.SemiTimeDependent)); + Assert.That(locationRecords[0].DikeTableHeight, Is.EqualTo(3.5).Within(tolerance)); + Assert.That(locationRecords[1].DikeTableHeight, Is.EqualTo(3.5).Within(tolerance)); + Assert.That(locationRecords[0].RiverLevel, Is.EqualTo(1.2).Within(tolerance)); + Assert.That(locationRecords[1].RiverLevel, Is.EqualTo(2.2).Within(tolerance)); + Assert.That(locationRecords[0].RiverLevelLow, Is.EqualTo(1.3).Within(tolerance)); + Assert.That(locationRecords[1].RiverLevelLow, Is.EqualTo(2.3).Within(tolerance)); + } - CreateLocationsFileWithObsoleteColumn(testFilePath); - var csvImporterLocations = new CsvImporterLocations(testFilePath); - IList locationRecords = csvImporterLocations.ImportedItems; - Assert.That(locationRecords.Count, Is.EqualTo(2)); - Assert.That(locationRecords[1].LocationId, Is.EqualTo("25-2-2-A-1-A")); - Assert.That(locationRecords[1].SurfaceLineId, Is.EqualTo("25-2-2-A-1-A")); - Assert.That(locationRecords[1].SegmentId, Is.EqualTo("106")); - Assert.That(locationRecords[1].GeoX, Is.EqualTo(66586.0).Within(tolerance)); - Assert.That(locationRecords[1].GeoY, Is.EqualTo(424173.0).Within(tolerance)); - Assert.That(locationRecords[1].XSoilGeometry2DOrigin, Is.EqualTo(2.0).Within(tolerance)); - Assert.That(locationRecords[1].PolderLevel, Is.EqualTo(-0.25).Within(tolerance)); - Assert.That(locationRecords[1].HeadPl2.Value, Is.EqualTo(0.8727).Within(tolerance)); - Assert.That(locationRecords[0].HeadPl3.Value, Is.EqualTo(0.9).Within(tolerance)); - Assert.That(locationRecords[0].HeadPl4.Value, Is.EqualTo(0.8).Within(tolerance)); - Assert.That(locationRecords[1].DikeEmbankmentMaterial, Is.EqualTo("klei")); - Assert.That(locationRecords[1].ShoulderEmbankmentMaterial, Is.EqualTo("klei2")); - Assert.That(locationRecords[1].PenetrationLength, Is.EqualTo(1.3).Within(tolerance)); - Assert.That(locationRecords[1].TrafficLoad, Is.EqualTo(10).Within(tolerance)); - Assert.That(locationRecords[0].TL_DegreeOfConsolidation, Is.EqualTo(10.1).Within(tolerance)); - Assert.That(locationRecords[1].TL_DegreeOfConsolidation, Is.EqualTo(55.5).Within(tolerance)); - Assert.That(locationRecords[1].MinimalCircleDepth, Is.EqualTo(1.5).Within(tolerance)); - Assert.That(locationRecords[1].DampingFactorPl3, Is.EqualTo(30.0).Within(tolerance)); - Assert.That(locationRecords[1].DampingFactorPl4, Is.EqualTo(40.0).Within(tolerance)); - Assert.That(locationRecords[1].PLLineCreationMethod, Is.EqualTo(PLLineCreationMethod.ExpertKnowledgeRRD)); - Assert.That(locationRecords[1].RequiredSafetyFactorPiping, Is.EqualTo(1.2).Within(tolerance)); - Assert.That(locationRecords[1].RequiredSafetyFactorStabilityInnerSlope, Is.EqualTo(1.3).Within(tolerance)); - Assert.That(locationRecords[1].RequiredSafetyFactorStabilityOuterSlope, Is.EqualTo(1.4).Within(tolerance)); - Assert.That(locationRecords[1].UpliftCriterionPiping, Is.EqualTo(1.1).Within(tolerance)); - Assert.That(locationRecords[1].UpliftCriterionStability, Is.EqualTo(1.2).Within(tolerance)); - Assert.That(locationRecords[1].DistanceToEntryPoint, Is.EqualTo(2.1).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetBelowDikeTopAtRiver, Is.EqualTo(0.5).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetBelowDikeTopAtPolder, Is.EqualTo(0.6).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetBelowShoulderBaseInside, Is.EqualTo(0.1).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetBelowDikeToeAtPolder, Is.EqualTo(0.2).Within(tolerance)); - Assert.That(locationRecords[1].StabilityShoulderGrowSlope, Is.EqualTo(2.0).Within(tolerance)); - Assert.That(locationRecords[1].StabilityShoulderGrowDeltaX, Is.EqualTo(0.2).Within(tolerance)); - Assert.That(locationRecords[1].StabilitySlopeAdaptionDeltaX, Is.EqualTo(0.5).Within(tolerance)); - Assert.That(locationRecords[0].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.01).Within(tolerance)); - Assert.That(locationRecords[1].SlopeDampingPiezometricHeightPolderSide, Is.EqualTo(0.2).Within(tolerance)); - Assert.That(locationRecords[0].StabilityDesignMethod, Is.EqualTo(StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)); - Assert.That(locationRecords[1].StabilityDesignMethod, Is.EqualTo(StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)); - Assert.That(locationRecords[0].SlopeAdaptionStartCotangent, Is.EqualTo(3.0).Within(tolerance)); - Assert.That(locationRecords[0].SlopeAdaptionEndCotangent, Is.EqualTo(6.0).Within(tolerance)); - Assert.That(locationRecords[0].SlopeAdaptionStepCotangent, Is.EqualTo(0.5).Within(tolerance)); - Assert.That(locationRecords[1].SlopeAdaptionStartCotangent, Is.EqualTo(4.5).Within(tolerance)); - Assert.That(locationRecords[1].SlopeAdaptionEndCotangent, Is.EqualTo(6.5).Within(tolerance)); - Assert.That(locationRecords[1].SlopeAdaptionStepCotangent, Is.EqualTo(0.25).Within(tolerance)); - Assert.That(locationRecords[0].UseNewDikeTopWidth, Is.True); - Assert.That(locationRecords[0].NewDikeTopWidth, Is.EqualTo(1.8).Within(tolerance)); - Assert.That(locationRecords[1].UseNewDikeTopWidth, Is.False); - Assert.That(locationRecords[1].NewDikeTopWidth, Is.EqualTo(0.8).Within(tolerance)); - Assert.That(locationRecords[0].UseNewDikeSlopeInside, Is.True); - Assert.That(locationRecords[0].NewDikeSlopeInside, Is.EqualTo(1.9).Within(tolerance)); - Assert.That(locationRecords[1].UseNewDikeSlopeInside, Is.False); - Assert.That(locationRecords[1].NewDikeSlopeInside, Is.EqualTo(0.9).Within(tolerance)); - Assert.That(locationRecords[0].UseNewDikeSlopeOutside, Is.True); - Assert.That(locationRecords[0].NewDikeSlopeOutside, Is.EqualTo(2.9).Within(tolerance)); - Assert.That(locationRecords[1].UseNewDikeSlopeOutside, Is.False); - Assert.That(locationRecords[1].NewDikeSlopeOutside, Is.EqualTo(1.9).Within(tolerance)); - Assert.That(locationRecords[0].UseNewShoulderTopSlope, Is.True); - Assert.That(locationRecords[0].NewShoulderTopSlope, Is.EqualTo(2.8).Within(tolerance)); - Assert.That(locationRecords[1].UseNewShoulderTopSlope, Is.False); - Assert.That(locationRecords[1].NewShoulderTopSlope, Is.EqualTo(1.8).Within(tolerance)); - Assert.That(locationRecords[0].UseNewShoulderBaseSlope, Is.True); - Assert.That(locationRecords[0].NewShoulderBaseSlope, Is.EqualTo(2.7).Within(tolerance)); - Assert.That(locationRecords[1].UseNewShoulderBaseSlope, Is.False); - Assert.That(locationRecords[1].NewShoulderBaseSlope, Is.EqualTo(1.7).Within(tolerance)); - Assert.That(locationRecords[0].UseNewMaxHeightShoulderAsFraction, Is.True); - Assert.That(locationRecords[0].NewMaxHeightShoulderAsFraction, Is.EqualTo(0.6).Within(tolerance)); - Assert.That(locationRecords[1].UseNewMaxHeightShoulderAsFraction, Is.False); - Assert.That(locationRecords[1].NewMaxHeightShoulderAsFraction, Is.EqualTo(0.7).Within(tolerance)); - Assert.That(locationRecords[0].UseNewMinDistanceDikeToeStartDitch, Is.True); - Assert.That(locationRecords[0].NewMinDistanceDikeToeStartDitch, Is.EqualTo(2.6).Within(tolerance)); - Assert.That(locationRecords[1].UseNewMinDistanceDikeToeStartDitch, Is.False); - Assert.That(locationRecords[1].NewMinDistanceDikeToeStartDitch, Is.EqualTo(1.6).Within(tolerance)); - Assert.That(locationRecords[0].UseNewDitchDefinition, Is.True); - Assert.That(locationRecords[0].NewWidthDitchBottom, Is.EqualTo(1.1).Within(tolerance)); - Assert.That(locationRecords[0].NewSlopeAngleDitch, Is.EqualTo(1.2).Within(tolerance)); - Assert.That(locationRecords[0].NewDepthDitch, Is.EqualTo(1.3).Within(tolerance)); - Assert.That(locationRecords[1].UseNewDitchDefinition, Is.False); - Assert.That(locationRecords[1].NewWidthDitchBottom, Is.EqualTo(1.4).Within(tolerance)); - Assert.That(locationRecords[1].NewSlopeAngleDitch, Is.EqualTo(1.5).Within(tolerance)); - Assert.That(locationRecords[1].NewDepthDitch, Is.EqualTo(1.6).Within(tolerance)); - Assert.That(locationRecords[0].StabilityZoneType, Is.EqualTo(MStabZonesType.NoZones)); - Assert.That(locationRecords[1].StabilityZoneType, Is.EqualTo(MStabZonesType.ForbiddenZone)); - Assert.That(locationRecords[0].ForbiddenZoneFactor, Is.EqualTo(0.5).Within(tolerance)); - Assert.That(locationRecords[1].ForbiddenZoneFactor, Is.EqualTo(0.9).Within(tolerance)); - Assert.That(locationRecords[0].PlLineOffsetBelowDikeCrestMiddle, Is.EqualTo(1.0).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetBelowDikeCrestMiddle, Is.EqualTo(1.1).Within(tolerance)); - Assert.That(locationRecords[0].UsePlLineOffsetBelowDikeCrestMiddle, Is.Null); - Assert.That(locationRecords[1].UsePlLineOffsetBelowDikeCrestMiddle, Is.Null); - Assert.That(locationRecords[0].PlLineOffsetFactorBelowShoulderCrest, Is.EqualTo(0.1).Within(tolerance)); - Assert.That(locationRecords[1].PlLineOffsetFactorBelowShoulderCrest, Is.EqualTo(0.11).Within(tolerance)); - Assert.That(locationRecords[0].UsePlLineOffsetFactorBelowShoulderCrest, Is.Null); - Assert.That(locationRecords[1].UsePlLineOffsetFactorBelowShoulderCrest, Is.Null); - Assert.That(locationRecords[0].IntrusionVerticalWaterPressure, Is.EqualTo(IntrusionVerticalWaterPressureType.Standard)); - Assert.That(locationRecords[1].IntrusionVerticalWaterPressure, Is.EqualTo(IntrusionVerticalWaterPressureType.SemiTimeDependent)); - Assert.That(locationRecords[0].DikeTableHeight, Is.EqualTo(3.5).Within(tolerance)); - Assert.That(locationRecords[1].DikeTableHeight, Is.EqualTo(3.5).Within(tolerance)); - Assert.That(locationRecords[0].RiverLevel, Is.EqualTo(1.2).Within(tolerance)); - Assert.That(locationRecords[1].RiverLevel, Is.EqualTo(2.2).Within(tolerance)); - Assert.That(locationRecords[0].RiverLevelLow, Is.EqualTo(1.3).Within(tolerance)); - Assert.That(locationRecords[1].RiverLevelLow, Is.EqualTo(2.3).Within(tolerance)); + [Test] + public void ScenariosImporterCorrectFileTest() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterCorrectFileTest() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosFile(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosFile(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.0, scenarioRecords[0].RiverLevel); + Assert.AreEqual(0.680, scenarioRecords[0].RiverLevelLow); + Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); + Assert.AreEqual(31.600, scenarioRecords[0].RequiredSafetyFactorPiping); + Assert.AreEqual(0.0, scenarioRecords[0].RequiredSafetyFactorStabilityInnerSlope); + Assert.AreEqual(1.300, scenarioRecords[0].RequiredSafetyFactorStabilityOuterSlope); + Assert.AreEqual(1.3, scenarioRecords[0].UpliftCriterionPiping); + Assert.AreEqual(0.0, scenarioRecords[0].UpliftCriterionStability); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.0, scenarioRecords[0].RiverLevel); - Assert.AreEqual(0.680, scenarioRecords[0].RiverLevelLow); - Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); - Assert.AreEqual(31.600, scenarioRecords[0].RequiredSafetyFactorPiping); - Assert.AreEqual(0.0, scenarioRecords[0].RequiredSafetyFactorStabilityInnerSlope); - Assert.AreEqual(1.300, scenarioRecords[0].RequiredSafetyFactorStabilityOuterSlope); - Assert.AreEqual(1.3, scenarioRecords[0].UpliftCriterionPiping); - Assert.AreEqual(0.0, scenarioRecords[0].UpliftCriterionStability); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.0, scenarioRecords[1].RiverLevel); + Assert.AreEqual(1.680, scenarioRecords[1].RiverLevelLow); + Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); + Assert.AreEqual(32.600, scenarioRecords[1].RequiredSafetyFactorPiping); + Assert.AreEqual(1.0, scenarioRecords[1].RequiredSafetyFactorStabilityInnerSlope); + Assert.AreEqual(1.400, scenarioRecords[1].RequiredSafetyFactorStabilityOuterSlope); + Assert.AreEqual(1.3, scenarioRecords[1].UpliftCriterionPiping); + Assert.AreEqual(0.0, scenarioRecords[1].UpliftCriterionStability); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.0, scenarioRecords[1].RiverLevel); - Assert.AreEqual(1.680, scenarioRecords[1].RiverLevelLow); - Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); - Assert.AreEqual(32.600, scenarioRecords[1].RequiredSafetyFactorPiping); - Assert.AreEqual(1.0, scenarioRecords[1].RequiredSafetyFactorStabilityInnerSlope); - Assert.AreEqual(1.400, scenarioRecords[1].RequiredSafetyFactorStabilityOuterSlope); - Assert.AreEqual(1.3, scenarioRecords[1].UpliftCriterionPiping); - Assert.AreEqual(0.0, scenarioRecords[1].UpliftCriterionStability); + [Test] + public void ScenariosImporterCorrectFileTestWithOffsetData() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterCorrectFileTestWithOffsetData() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosFileWithOffsetData(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosFileWithOffsetData(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.0, scenarioRecords[0].RiverLevel); + Assert.AreEqual(0.680, scenarioRecords[0].RiverLevelLow); + Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); + Assert.AreEqual(31.600, scenarioRecords[0].RequiredSafetyFactorPiping); + Assert.AreEqual(0.0, scenarioRecords[0].RequiredSafetyFactorStabilityInnerSlope); + Assert.AreEqual(1.300, scenarioRecords[0].RequiredSafetyFactorStabilityOuterSlope); + Assert.AreEqual(1.3, scenarioRecords[0].UpliftCriterionPiping); + Assert.AreEqual(0.0, scenarioRecords[0].UpliftCriterionStability); + Assert.AreEqual(1.1, scenarioRecords[0].PlLineOffsetBelowDikeTopAtRiver); + Assert.AreEqual(2.2, scenarioRecords[0].PlLineOffsetBelowDikeTopAtPolder); + Assert.AreEqual(3.3, scenarioRecords[0].PlLineOffsetBelowShoulderBaseInside); + Assert.AreEqual(4.4, scenarioRecords[0].PlLineOffsetBelowDikeToeAtPolder); + Assert.AreEqual(true, scenarioRecords[0].UsePlLineOffsetBelowDikeCrestMiddle); + Assert.AreEqual(5.5, scenarioRecords[0].PlLineOffsetBelowDikeCrestMiddle); + Assert.AreEqual(false, scenarioRecords[0].UsePlLineOffsetFactorBelowShoulderCrest); + Assert.AreEqual(6.6, scenarioRecords[0].PlLineOffsetFactorBelowShoulderCrest); + Assert.AreEqual(7.7, scenarioRecords[0].HeadPl3); + Assert.AreEqual(8.8, scenarioRecords[0].HeadPl4); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.0, scenarioRecords[0].RiverLevel); - Assert.AreEqual(0.680, scenarioRecords[0].RiverLevelLow); - Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); - Assert.AreEqual(31.600, scenarioRecords[0].RequiredSafetyFactorPiping); - Assert.AreEqual(0.0, scenarioRecords[0].RequiredSafetyFactorStabilityInnerSlope); - Assert.AreEqual(1.300, scenarioRecords[0].RequiredSafetyFactorStabilityOuterSlope); - Assert.AreEqual(1.3, scenarioRecords[0].UpliftCriterionPiping); - Assert.AreEqual(0.0, scenarioRecords[0].UpliftCriterionStability); - Assert.AreEqual(1.1, scenarioRecords[0].PlLineOffsetBelowDikeTopAtRiver); - Assert.AreEqual(2.2, scenarioRecords[0].PlLineOffsetBelowDikeTopAtPolder); - Assert.AreEqual(3.3, scenarioRecords[0].PlLineOffsetBelowShoulderBaseInside); - Assert.AreEqual(4.4, scenarioRecords[0].PlLineOffsetBelowDikeToeAtPolder); - Assert.AreEqual(true, scenarioRecords[0].UsePlLineOffsetBelowDikeCrestMiddle); - Assert.AreEqual(5.5, scenarioRecords[0].PlLineOffsetBelowDikeCrestMiddle); - Assert.AreEqual(false, scenarioRecords[0].UsePlLineOffsetFactorBelowShoulderCrest); - Assert.AreEqual(6.6, scenarioRecords[0].PlLineOffsetFactorBelowShoulderCrest); - Assert.AreEqual(7.7, scenarioRecords[0].HeadPl3); - Assert.AreEqual(8.8, scenarioRecords[0].HeadPl4); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.0, scenarioRecords[1].RiverLevel); + Assert.AreEqual(1.680, scenarioRecords[1].RiverLevelLow); + Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); + Assert.AreEqual(32.600, scenarioRecords[1].RequiredSafetyFactorPiping); + Assert.AreEqual(1.0, scenarioRecords[1].RequiredSafetyFactorStabilityInnerSlope); + Assert.AreEqual(1.400, scenarioRecords[1].RequiredSafetyFactorStabilityOuterSlope); + Assert.AreEqual(1.3, scenarioRecords[1].UpliftCriterionPiping); + Assert.AreEqual(0.0, scenarioRecords[1].UpliftCriterionStability); + Assert.AreEqual(0.1, scenarioRecords[1].PlLineOffsetBelowDikeTopAtRiver); + Assert.AreEqual(0.2, scenarioRecords[1].PlLineOffsetBelowDikeTopAtPolder); + Assert.AreEqual(0.3, scenarioRecords[1].PlLineOffsetBelowShoulderBaseInside); + Assert.AreEqual(0.4, scenarioRecords[1].PlLineOffsetBelowDikeToeAtPolder); + Assert.AreEqual(false, scenarioRecords[1].UsePlLineOffsetBelowDikeCrestMiddle); + Assert.AreEqual(0.5, scenarioRecords[1].PlLineOffsetBelowDikeCrestMiddle); + Assert.AreEqual(true, scenarioRecords[1].UsePlLineOffsetFactorBelowShoulderCrest); + Assert.AreEqual(0.6, scenarioRecords[1].PlLineOffsetFactorBelowShoulderCrest); + Assert.AreEqual(0.7, scenarioRecords[1].HeadPl3); + Assert.AreEqual(0.8, scenarioRecords[1].HeadPl4); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.0, scenarioRecords[1].RiverLevel); - Assert.AreEqual(1.680, scenarioRecords[1].RiverLevelLow); - Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); - Assert.AreEqual(32.600, scenarioRecords[1].RequiredSafetyFactorPiping); - Assert.AreEqual(1.0, scenarioRecords[1].RequiredSafetyFactorStabilityInnerSlope); - Assert.AreEqual(1.400, scenarioRecords[1].RequiredSafetyFactorStabilityOuterSlope); - Assert.AreEqual(1.3, scenarioRecords[1].UpliftCriterionPiping); - Assert.AreEqual(0.0, scenarioRecords[1].UpliftCriterionStability); - Assert.AreEqual(0.1, scenarioRecords[1].PlLineOffsetBelowDikeTopAtRiver); - Assert.AreEqual(0.2, scenarioRecords[1].PlLineOffsetBelowDikeTopAtPolder); - Assert.AreEqual(0.3, scenarioRecords[1].PlLineOffsetBelowShoulderBaseInside); - Assert.AreEqual(0.4, scenarioRecords[1].PlLineOffsetBelowDikeToeAtPolder); - Assert.AreEqual(false, scenarioRecords[1].UsePlLineOffsetBelowDikeCrestMiddle); - Assert.AreEqual(0.5, scenarioRecords[1].PlLineOffsetBelowDikeCrestMiddle); - Assert.AreEqual(true, scenarioRecords[1].UsePlLineOffsetFactorBelowShoulderCrest); - Assert.AreEqual(0.6, scenarioRecords[1].PlLineOffsetFactorBelowShoulderCrest); - Assert.AreEqual(0.7, scenarioRecords[1].HeadPl3); - Assert.AreEqual(0.8, scenarioRecords[1].HeadPl4); + [Test] + public void ScenariosImporterIllegalHeaderTest() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterIllegalHeaderTest() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosFileWithIllegalHeader(testFilePath); + Assert.That(() => new CsvImporterScenarios(testFilePath), Throws.InstanceOf()); + } - CreateScenariosFileWithIllegalHeader(testFilePath); - Assert.That(() => new CsvImporterScenarios(testFilePath), Throws.InstanceOf()); + [Test] + public void ScenariosImporterIllegalValuesTest() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterIllegalValuesTest() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosFileWithIllegalValues(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.IsEmpty(scenarioRecords); + Assert.AreEqual(2, csvImporterScenarios.ErrorMessages.Count); + } - CreateScenariosFileWithIllegalValues(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; - Assert.IsEmpty(scenarioRecords); - Assert.AreEqual(2, csvImporterScenarios.ErrorMessages.Count); + [Test] + public void ScenariosImporterWithHeadPl3AndHeadPl4Test() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterWithHeadPl3AndHeadPl4Test() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosWithHeadPl3AndHeadPl4File(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosWithHeadPl3AndHeadPl4File(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.001, scenarioRecords[0].HeadPl3); + Assert.AreEqual(0.002, scenarioRecords[0].HeadPl4); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.001, scenarioRecords[0].HeadPl3); - Assert.AreEqual(0.002, scenarioRecords[0].HeadPl4); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.003, scenarioRecords[1].HeadPl3); + Assert.AreEqual(0.004, scenarioRecords[1].HeadPl4); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.003, scenarioRecords[1].HeadPl3); - Assert.AreEqual(0.004, scenarioRecords[1].HeadPl4); + [Test] + public void ScenariosImporterWithHeadPl3AndHeadPl4OldFormatTest() + { + const string importFile = "scenarios.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterWithHeadPl3AndHeadPl4OldFormatTest() - { - const string importFile = "scenarios.csv"; - string testFilePath = Path.Combine(importFolder, importFile); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosWithHeadPl3AndHeadPl4OldFormatFile(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosWithHeadPl3AndHeadPl4OldFormatFile(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.011, scenarioRecords[0].HeadPl3); + Assert.AreEqual(0.012, scenarioRecords[0].HeadPl4); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.011, scenarioRecords[0].HeadPl3); - Assert.AreEqual(0.012, scenarioRecords[0].HeadPl4); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.013, scenarioRecords[1].HeadPl3); + Assert.AreEqual(0.014, scenarioRecords[1].HeadPl4); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.013, scenarioRecords[1].HeadPl3); - Assert.AreEqual(0.014, scenarioRecords[1].HeadPl4); + [Test] + public void ScenariosImporterWithPolderLevelTest() + { + const string fileName = "polderlevel.csv"; + string testFilePath = Path.Combine(importFolder, fileName); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterWithPolderLevelTest() - { - const string fileName = "polderlevel.csv"; - string testFilePath = Path.Combine(importFolder, fileName); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosWithPolderLevelFile(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosWithPolderLevelFile(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.001, scenarioRecords[0].PolderLevel); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.001, scenarioRecords[0].PolderLevel); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.003, scenarioRecords[1].PolderLevel); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.003, scenarioRecords[1].PolderLevel); + [Test] + public void ScenariosImporterWithHeadPL2Test() + { + const string fileName = "headPL2.csv"; + string testFilePath = Path.Combine(importFolder, fileName); + if (File.Exists(testFilePath)) + { + File.Delete(testFilePath); } - [Test] - public void ScenariosImporterWithHeadPL2Test() - { - const string fileName = "headPL2.csv"; - string testFilePath = Path.Combine(importFolder, fileName); - if (File.Exists(testFilePath)) - { - File.Delete(testFilePath); - } + CreateScenariosWithHeadPL2File(testFilePath); + var csvImporterScenarios = new CsvImporterScenarios(testFilePath); + IList scenarioRecords = csvImporterScenarios.ImportedItems; - CreateScenariosWithHeadPL2File(testFilePath); - var csvImporterScenarios = new CsvImporterScenarios(testFilePath); - IList scenarioRecords = csvImporterScenarios.ImportedItems; + Assert.AreEqual("D1", scenarioRecords[0].LocationId); + Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); + Assert.AreEqual(0.001, scenarioRecords[0].HeadPl2); - Assert.AreEqual("D1", scenarioRecords[0].LocationId); - Assert.AreEqual("1", scenarioRecords[0].LocationScenarioId); - Assert.AreEqual(0.001, scenarioRecords[0].HeadPl2); + Assert.AreEqual("D2", scenarioRecords[1].LocationId); + Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); + Assert.AreEqual(0.003, scenarioRecords[1].HeadPl2); + } - Assert.AreEqual("D2", scenarioRecords[1].LocationId); - Assert.AreEqual("1", scenarioRecords[1].LocationScenarioId); - Assert.AreEqual(0.003, scenarioRecords[1].HeadPl2); - } + [Test] + public void AllCsvTimingTest() + { + DataEventPublisher.InvokeWithoutPublishingEvents(() => + { + DateTime start = DateTime.Now; + const string testDataFolder = @"TestData\CsvData\ImporterTest"; + var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testDataFolder + "\\surfacelines.csv"); + var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testDataFolder + "\\characteristicpoints.csv"); + var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testDataFolder + "\\soilprofiles.csv"); + var csvImporterSegments = new CsvImporterSegments(testDataFolder + "\\segments.csv"); + DateTime end = DateTime.Now; + TimeSpan elapsed = end - start; + // Note: numbers are the number of records read, not the number of Dam data objects. + Assert.AreEqual(3306, csvImporterSurfaceLines.ImportedItems.Count); + Assert.AreEqual(3305, csvImporterCharacteristicPoints.ImportedItems.Count); + Assert.AreEqual(23554, csvImporterSoilProfiles.ImportedItems.Count); + Assert.AreEqual(7672, csvImporterSegments.ImportedItems.Count); + TimeSpan maxTime = TimeSpan.FromSeconds(6); // This is the time on the buildserver; local time was 2 seconds; + // enlarged from 4 to 6 sec because code coverage was turned on on build server + Assert.Less(elapsed, maxTime); + }); + } - [Test] - public void AllCsvTimingTest() + [Test] + public void SoilsImporterCorrectFileTest() + { + const string importFile = "soils.csv"; + string testFilePath = Path.Combine(importFolder, importFile); + if (File.Exists(testFilePath)) { - DataEventPublisher.InvokeWithoutPublishingEvents(() => - { - DateTime start = DateTime.Now; - const string testDataFolder = @"TestData\CsvData\ImporterTest"; - var csvImporterSurfaceLines = new CsvImporterSurfaceLines(testDataFolder + "\\surfacelines.csv"); - var csvImporterCharacteristicPoints = new CsvImporterCharacteristicPoints(testDataFolder + "\\characteristicpoints.csv"); - var csvImporterSoilProfiles = new CsvImporterSoilProfiles(testDataFolder + "\\soilprofiles.csv"); - var csvImporterSegments = new CsvImporterSegments(testDataFolder + "\\segments.csv"); - DateTime end = DateTime.Now; - TimeSpan elapsed = end - start; - // Note: numbers are the number of records read, not the number of Dam data objects. - Assert.AreEqual(3306, csvImporterSurfaceLines.ImportedItems.Count); - Assert.AreEqual(3305, csvImporterCharacteristicPoints.ImportedItems.Count); - Assert.AreEqual(23554, csvImporterSoilProfiles.ImportedItems.Count); - Assert.AreEqual(7672, csvImporterSegments.ImportedItems.Count); - TimeSpan maxTime = TimeSpan.FromSeconds(6); // This is the time on the buildserver; local time was 2 seconds; - // enlarged from 4 to 6 sec because code coverage was turned on on build server - Assert.Less(elapsed, maxTime); - }); + File.Delete(testFilePath); } - /// - /// Create csv file with segments containing 1d soilprofiles - /// - /// - private static void CreateSegmentsFor1DProfilesFile(string filePath) + CreateSoilsFile(testFilePath); + var csvImporterSoils = new CsvImporterSoils(testFilePath); + Assert.That(csvImporterSoils.ImportedItems.Count, Is.EqualTo(3)); + IList soilRecords = csvImporterSoils.ImportedItems; + + CsvImporterSoils.SoilRecord soilRecord = soilRecords[0]; + Assert.That(soilRecord.SoilName, Is.EqualTo("Zand")); + Assert.That(soilRecord.SoilType, Is.EqualTo(SoilType.Sand)); + Assert.That(soilRecord.SoilColor, Is.EqualTo(Color.FromArgb(166,235, 252))); + Assert.That(soilRecord.SaturatedUnitWeight, Is.EqualTo(20.000)); + Assert.That(soilRecord.UnsaturatedUnitWeight, Is.EqualTo(18.000)); + Assert.That(soilRecord.Cohesion, Is.EqualTo(0.000)); + Assert.That(soilRecord.FrictionAngle, Is.EqualTo(30.000)); + Assert.That(soilRecord.DiameterD70, Is.EqualTo(210.00)); + Assert.That(soilRecord.PermeabilityX, Is.EqualTo(0.001)); + Assert.That(soilRecord.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.None)); + Assert.That(soilRecord.StrengthIncreaseExponent, Is.Null); + Assert.That(soilRecord.RatioSuPc, Is.Null); + Assert.That(soilRecord.UsePop, Is.False); + Assert.That(soilRecord.Pop, Is.EqualTo(10.000)); + + soilRecord = soilRecords[1]; + Assert.That(soilRecord.SoilName, Is.EqualTo("Klei")); + Assert.That(soilRecord.SoilColor, Is.EqualTo(Color.FromArgb(255,255, 255))); + Assert.That(soilRecord.SoilType, Is.EqualTo(SoilType.Clay)); + Assert.That(soilRecord.SaturatedUnitWeight, Is.EqualTo(17.500)); + Assert.That(soilRecord.UnsaturatedUnitWeight, Is.EqualTo(17.500)); + Assert.That(soilRecord.Cohesion, Is.EqualTo(3.500)); + Assert.That(soilRecord.FrictionAngle, Is.EqualTo(18.500)); + Assert.That(soilRecord.DiameterD70, Is.EqualTo(210.00)); + Assert.That(soilRecord.PermeabilityX, Is.EqualTo(0.001)); + Assert.That(soilRecord.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.None)); + Assert.That(soilRecord.StrengthIncreaseExponent, Is.Null); + Assert.That(soilRecord.RatioSuPc, Is.Null); + Assert.That(soilRecord.UsePop, Is.False); + Assert.That(soilRecord.Pop, Is.EqualTo(10.000)); + + soilRecord = soilRecords[2]; + Assert.That(soilRecord.SoilName, Is.EqualTo("Veen")); + Assert.That(soilRecord.SoilColor, Is.EqualTo(Color.FromArgb(164,255, 166))); + Assert.That(soilRecord.SoilType, Is.EqualTo(SoilType.Peat)); + Assert.That(soilRecord.SaturatedUnitWeight, Is.EqualTo(11.000)); + Assert.That(soilRecord.UnsaturatedUnitWeight, Is.EqualTo(11.000)); + Assert.That(soilRecord.Cohesion, Is.EqualTo(2.000)); + Assert.That(soilRecord.FrictionAngle, Is.EqualTo(20.500)); + Assert.That(soilRecord.DiameterD70, Is.EqualTo(210.00)); + Assert.That(soilRecord.PermeabilityX, Is.EqualTo(0.001)); + Assert.That(soilRecord.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.None)); + Assert.That(soilRecord.StrengthIncreaseExponent, Is.Null); + Assert.That(soilRecord.RatioSuPc, Is.Null); + Assert.That(soilRecord.UsePop, Is.False); + Assert.That(soilRecord.Pop, Is.EqualTo(10.000)); + } + + /// + /// Create csv file with segments containing 1d soilprofiles + /// + /// + private static void CreateSegmentsFor1DProfilesFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("segment_id;soilprofile_id;probability;calculation_type"); - writer.WriteLine("1;1DP1;80;Stability"); - writer.WriteLine("1;1DP2;20;Stability"); - writer.WriteLine("1;1DP2;100;Piping"); - writer.WriteLine("2;1DP2;100;Stability"); - writer.WriteLine("2;1DP1;100;Piping"); - } + writer.WriteLine("segment_id;soilprofile_id;probability;calculation_type"); + writer.WriteLine("1;1DP1;80;Stability"); + writer.WriteLine("1;1DP2;20;Stability"); + writer.WriteLine("1;1DP2;100;Piping"); + writer.WriteLine("2;1DP2;100;Stability"); + writer.WriteLine("2;1DP1;100;Piping"); } + } - /// - /// Create csv file with segments containing 2d geometries - /// - /// - private static void CreateSegmentsFor2DGeometriesFile(string filePath) + /// + /// Create csv file with segments containing 2d geometries + /// + /// + private static void CreateSegmentsFor2DGeometriesFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("segment_id;soilgeometry2D_name;probability;calculation_type"); - writer.WriteLine("1;GeomA;80;Stability"); - writer.WriteLine("2;GeomB;20;Piping"); - } + writer.WriteLine("segment_id;soilgeometry2D_name;probability;calculation_type"); + writer.WriteLine("1;GeomA;80;Stability"); + writer.WriteLine("2;GeomB;20;Piping"); } + } - /// - /// Create csv file with segments containing error header - /// - /// - private static void CreateSegmentsFileWithIllegalHeader(string filePath) + /// + /// Create csv file with segments containing error header + /// + /// + private static void CreateSegmentsFileWithIllegalHeader(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("segment_id;soilgeometry2D_name;soilprofile_id;probability;calculation_type"); - writer.WriteLine("1;GeomA;80;Stability"); - writer.WriteLine("1;GeomB;20;Stability"); - } + writer.WriteLine("segment_id;soilgeometry2D_name;soilprofile_id;probability;calculation_type"); + writer.WriteLine("1;GeomA;80;Stability"); + writer.WriteLine("1;GeomB;20;Stability"); } + } - private static void CreateSoilProfilesFileWithObsoleteColumns(string filePath) + private static void CreateSoilProfilesFileWithObsoleteColumns(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("soilprofile_id;top_level;soil_name;soiltype"); - writer.WriteLine("1DP1;10;HW-OBO;zand"); - writer.WriteLine("1DP1;-0.6;HW-DUN;veen"); - writer.WriteLine("1DP1;-1.8;HW-DUOzand;veen"); - writer.WriteLine("1DP1;-2.8;HW-HVN;zand"); - writer.WriteLine("1DP1;-4;HW-HVN;zand"); - writer.WriteLine("1DP1;-5;Alg-zand (0-30);zand"); - writer.WriteLine("1DP2;10;HW-OBO;zand"); - writer.WriteLine("1DP2;-0.7;HW-DUN;veen"); - writer.WriteLine("1DP2;-1.5;HW-DUOzand;veen"); - writer.WriteLine("1DP2;-2.4;HW-HVN;zand"); - writer.WriteLine("1DP2;-4.3;HW-HVN;zand"); - writer.WriteLine("1DP2;-5.3;Alg-zand (0-30);zand"); - } + writer.WriteLine("soilprofile_id;top_level;soil_name;soiltype"); + writer.WriteLine("1DP1;10;HW-OBO;zand"); + writer.WriteLine("1DP1;-0.6;HW-DUN;veen"); + writer.WriteLine("1DP1;-1.8;HW-DUOzand;veen"); + writer.WriteLine("1DP1;-2.8;HW-HVN;zand"); + writer.WriteLine("1DP1;-4;HW-HVN;zand"); + writer.WriteLine("1DP1;-5;Alg-zand (0-30);zand"); + writer.WriteLine("1DP2;10;HW-OBO;zand"); + writer.WriteLine("1DP2;-0.7;HW-DUN;veen"); + writer.WriteLine("1DP2;-1.5;HW-DUOzand;veen"); + writer.WriteLine("1DP2;-2.4;HW-HVN;zand"); + writer.WriteLine("1DP2;-4.3;HW-HVN;zand"); + writer.WriteLine("1DP2;-5.3;Alg-zand (0-30);zand"); } + } - private static void CreateSoilProfilesFile(string filePath) + private static void CreateSoilProfilesFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("soilprofile_id;top_level;soil_name"); - writer.WriteLine("1DP1;10;HW-OBO"); - writer.WriteLine("1DP1;-0.6;HW-DUN"); - writer.WriteLine("1DP1;-1.8;HW-DUOzand"); - writer.WriteLine("1DP1;-2.8;HW-HVN"); - writer.WriteLine("1DP1;-4;HW-HVN"); - writer.WriteLine("1DP1;-5;Alg-zand (0-30)"); - writer.WriteLine("1DP2;10;HW-OBO"); - writer.WriteLine("1DP2;-0.7;HW-DUN"); - writer.WriteLine("1DP2;-1.5;HW-DUOzand"); - writer.WriteLine("1DP2;-2.4;HW-HVN"); - writer.WriteLine("1DP2;-4.3;HW-HVN"); - writer.WriteLine("1DP2;-5.3;Alg-zand (0-30)"); - } + writer.WriteLine("soilprofile_id;top_level;soil_name"); + writer.WriteLine("1DP1;10;HW-OBO"); + writer.WriteLine("1DP1;-0.6;HW-DUN"); + writer.WriteLine("1DP1;-1.8;HW-DUOzand"); + writer.WriteLine("1DP1;-2.8;HW-HVN"); + writer.WriteLine("1DP1;-4;HW-HVN"); + writer.WriteLine("1DP1;-5;Alg-zand (0-30)"); + writer.WriteLine("1DP2;10;HW-OBO"); + writer.WriteLine("1DP2;-0.7;HW-DUN"); + writer.WriteLine("1DP2;-1.5;HW-DUOzand"); + writer.WriteLine("1DP2;-2.4;HW-HVN"); + writer.WriteLine("1DP2;-4.3;HW-HVN"); + writer.WriteLine("1DP2;-5.3;Alg-zand (0-30)"); } + } - private static void CreateSoilProfilesFileWithIllegalHeader(string filePath) + private static void CreateSoilsFile(string filePath) + { + using StreamWriter writer = File.CreateText(filePath); + writer.WriteLine("soil_name;soil_color;soil_type;saturated_unit_weight;unsaturated_unit_weight;cohesion;friction_angle;diameter_d70;permeability_x;shear_strength_model;strength_increase_exponent;ratio_su_pc;use_pop;pop"); + // writer.WriteLine("Zand;#A6EBFC;Sand;20.000;18.000;0.000;30.000;210.00;0.001;None;null;0;10.000"); + // writer.WriteLine("Klei;#FFFFFF;Clay;17.500;17.500;3.500;18.500;210.00;0.001;None;null;null;0;10.000"); + // writer.WriteLine("Veen;#A4FFA6;Peat;11.000;11.000;2.000;20.500;210.00;0.001;None;null;null;0;10.000"); + writer.WriteLine("Zand;#A6EBFC;Sand;20.000;18.000;0.000;30.000;210.00;0.001;None;;;0;10.000"); + writer.WriteLine("Klei;#FFFFFF;Clay;17.500;17.500;3.500;18.500;210.00;0.001;None;;;0;10.000"); + writer.WriteLine("Veen;#A4FFA6;Peat;11.000;11.000;2.000;20.500;210.00;0.001;None;;;0;10.000"); + } + + private static void CreateSoilProfilesFileWithIllegalHeader(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("soilprofile_id;soil_name"); - writer.WriteLine("1DP1;10;HW-OBO"); - } + writer.WriteLine("soilprofile_id;soil_name"); + writer.WriteLine("1DP1;10;HW-OBO"); } + } - private static void CreateSoilProfilesFileWithIllegalHeaderField(string filePath) + private static void CreateSoilProfilesFileWithIllegalHeaderField(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine("soilprofile_id;soil_name;aaa;bbb;"); - writer.WriteLine("1DP1;10;HW-OBO"); - } + writer.WriteLine("soilprofile_id;soil_name;aaa;bbb;"); + writer.WriteLine("1DP1;10;HW-OBO"); } + } - private static void CreateCharacteristicPointsFile(string filePath) + private static void CreateCharacteristicPointsFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "Profielnaam;X_Maaiveld binnenwaarts;Y_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); - writer.WriteLine( - "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); - } + writer.WriteLine( + "Profielnaam;X_Maaiveld binnenwaarts;Y_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); + writer.WriteLine( + "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); } + } - private static void CreateCharacteristicPointsFileWithLocationId(string filePath) + private static void CreateCharacteristicPointsFileWithLocationId(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "LocationId;X_Maaiveld binnenwaarts;Y_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); - writer.WriteLine( - "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); - } + writer.WriteLine( + "LocationId;X_Maaiveld binnenwaarts;Y_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); + writer.WriteLine( + "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); } + } - private static void CreateCharacteristicPointsFileWithIllegalHeader(string filePath) + private static void CreateCharacteristicPointsFileWithIllegalHeader(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "Profielnaam;X_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek_sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); - writer.WriteLine( - "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); - } + writer.WriteLine( + "Profielnaam;X_Maaiveld binnenwaarts;Z_Maaiveld binnenwaarts;X_Insteek sloot polderzijde;Y_Insteek sloot polderzijde;Z_Insteek sloot polderzijde;X_Slootbodem polderzijde;Y_Slootbodem polderzijde;Z_Slootbodem polderzijde;X_Slootbodem dijkzijde;Y_Slootbodem dijkzijde;Z_Slootbodem dijkzijde;X_Insteek sloot dijkzijde;Y_Insteek_sloot dijkzijde;Z_Insteek sloot dijkzijde;X_Teen dijk binnenwaarts;Y_Teen dijk binnenwaarts;Z_Teen dijk binnenwaarts;X_Kruin binnenberm;Y_Kruin binnenberm;Z_Kruin binnenberm;X_Insteek binnenberm;Y_Insteek binnenberm;Z_Insteek binnenberm;X_Kruin binnentalud;Y_Kruin binnentalud;Z_Kruin binnentalud;X_Verkeersbelasting kant binnenwaarts;Y_Verkeersbelasting kant binnenwaarts;Z_Verkeersbelasting kant binnenwaarts;X_Verkeersbelasting kant buitenwaarts;Y_Verkeersbelasting kant buitenwaarts;Z_Verkeersbelasting kant buitenwaarts;X_Kruin buitentalud;Y_Kruin buitentalud;Z_Kruin buitentalud;X_Insteek buitenberm;Y_Insteek buitenberm;Z_Insteek buitenberm;X_Kruin buitenberm;Y_Kruin buitenberm;Z_Kruin buitenberm;X_Teen dijk buitenwaarts;Y_Teen dijk buitenwaarts;Z_Teen dijk buitenwaarts;X_Maaiveld buitenwaarts;Y_Maaiveld buitenwaarts;Z_Maaiveld buitenwaarts;X_Dijktafelhoogte;Y_Dijktafelhoogte;Z_Dijktafelhoogte;Volgnummer"); + writer.WriteLine( + "D1;117.94;0;0.12;-1;-1;-1;73.99;0;-1.0;72.55;0;-1.46;67.9;0;1.07;63.31;0;1.36;-1;-1;-1;-1;-1;-1;55.17;0;4.46;54.25;0;4.69;51.75;0;4.662;50.11;0;4.46;40.48;0;1.94;32.21;0;1.67;31.6;0;1.3;0;0;0.68;52.63;0;4.77;1"); } + } - private static void CreateSurfaceLinesFile(string filePath) + private static void CreateSurfaceLinesFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "Profielnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); - writer.WriteLine( - "D1;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); - writer.WriteLine( - "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); - } + writer.WriteLine( + "Profielnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); + writer.WriteLine( + "D1;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); + writer.WriteLine( + "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); } + } - private static void CreateSurfaceLinesFileWithLocationId(string filePath) + private static void CreateSurfaceLinesFileWithLocationId(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "LocationId;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); - writer.WriteLine( - "D1;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); - writer.WriteLine( - "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); - } + writer.WriteLine( + "LocationId;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); + writer.WriteLine( + "D1;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); + writer.WriteLine( + "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); } + } - private static void CreateSurfaceLinesFileWithIllegalValues(string filePath) + private static void CreateSurfaceLinesFileWithIllegalValues(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "Profielnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); - writer.WriteLine( - "D1;;AS63.310;Bw0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.0as00;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); - writer.WriteLine( - "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); - } + writer.WriteLine( + "Profielnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); + writer.WriteLine( + "D1;;AS63.310;Bw0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.0as00;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); + writer.WriteLine( + "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); } + } - private static void CreateSurfaceLinesFileWithIllegalHeaders(string filePath) + private static void CreateSurfaceLinesFileWithIllegalHeaders(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "Proflnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); - writer.WriteLine( - "D1;;AS63.310;Bw0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.0as00;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); - writer.WriteLine( - "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); - } + writer.WriteLine( + "Proflnaam;Geologischprofiel;X_GridPoint;Y_GridPoint;ScenarioClusterID;X1;Y1;Z1;.....;Xn;Yn;Zn;(Profiel)"); + writer.WriteLine( + "D1;;AS63.310;Bw0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.0as00;1.300;31.730;0.000;1.610;32.210;0.000;1.670;35.580;0.000;1.580;40.480;0.000;1.940;47.860;0.000;3.790;50.110;0.000;4.460;51.750;0.000;4.662;52.630;0.000;4.770;54.250;0.000;4.690;55.170;0.000;4.460;58.850;0.000;2.980;60.290;0.000;2.460;63.310;0.000;1.360;67.900;0.000;1.070;69.410;0.000;0.600;69.800;0.000;0.480;70.530;0.000;0.000;70.820;0.000;-0.190;71.550;0.000;-0.600;72.370;0.000;-1.060;72.380;0.000;-1.170;72.550;0.000;-1.460;73.860;0.000;-1.390;73.990;0.000;-1.0;74.570;0.000;-0.840;74.970;0.000;-0.600;76.170;0.000;0.110;86.660;0.000;0.270;103.280;0.000;0.220;117.940;0.000;0.120"); + writer.WriteLine( + "D2;;63.310;0.000;1;0.000;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;0.000;1.610"); } + } - private static void CreateLocationsFileWithObsoleteColumn(string filePath) + private static void CreateLocationsFileWithObsoleteColumn(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;dike_table_height;SlopeDampingPiezometricHeightPolderSide;StabilityDesignMethod;SlopeAdaptionStartCotangent;SlopeAdaptionEndCotangent;SlopeAdaptionStepCotangent; UseNewDikeTopWidth; NewDikeTopWidth;UseNewDikeSlopeInside;NewDikeSlopeInside;UseNewDikeSlopeOutside;NewDikeSlopeOutside;UseNewShoulderTopSlope;NewShoulderTopSlope;UseNewShoulderBaseSlope;NewShoulderBaseSlope;UseNewMaxHeightShoulderAsFraction;NewMaxHeightShoulderAsFraction;UseNewMinDistanceDikeToeStartDitch;NewMinDistanceDikeToeStartDitch;UseNewDitchDefinition;NewWidthDitchBottom;newSlopeAngleDitch;NewDepthDitch;ZoneType;ForbiddenZoneFactor;ZoneAreaRestSlopeCrestWidth;PLLineOffsetBelowDikeCrestMiddle;PLLineOffsetFactorBelowShoulderCrest;UsePLLineOffsetDryBelowDikeCrestMiddle;PLLineOffsetDryBelowDikeCrestMiddle;UsePLLineOffsetDryFactorBelowShoulderCrest;PLLineOffsetDryFactorBelowShoulderCrest;IntrusionVerticalWaterPressure;TL_DegreeOfConsolidation;water_height;water_height_low;water_height_decimerings_hoogte;max_waterheight"); - writer.WriteLine( - "16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0.9;0.2;13.056;0.9;0.8;1;1;klei;klei2;1;2;3;12;TRUE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.01;OptimizedSlopeAndShoulderAdaption;3.0;6.0;0.5;TRUE;1.8;TRUE;1.9;TRUE;2.9;TRUE;2.8;TRUE;2.7;TRUE;0.6;TRUE;2.6;TRUE;1.1;1.2;1.3;NoZones;0.5;1.6;1.0;0.1;TRUE;1.1;FALSE;0.11;Standard;10.1;1.2;1.3;1.4;1.5"); - writer.WriteLine( - "25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0.25;-0.25;0.8727;-0.25;-0.25;1;1;klei;klei2;1;2;3;12;FALSE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.2;SlopeAdaptionBeforeShoulderAdaption;4.5;6.5;0.25;FALSE;0.8;FALSE;0.9;FALSE;1.9;FALSE;1.8;FALSE;1.7;FALSE;0.7;FALSE;1.6;FALSE;1.4;1.5;1.6;ForbiddenZone;0.9;2.1; 1.1;0.11;FALSE; 1.0;TRUE;0.1;SemiTimeDependent;55.5;2.2;2.3;2.4;2.5"); - } + writer.WriteLine( + "location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;dike_table_height;SlopeDampingPiezometricHeightPolderSide;StabilityDesignMethod;SlopeAdaptionStartCotangent;SlopeAdaptionEndCotangent;SlopeAdaptionStepCotangent; UseNewDikeTopWidth; NewDikeTopWidth;UseNewDikeSlopeInside;NewDikeSlopeInside;UseNewDikeSlopeOutside;NewDikeSlopeOutside;UseNewShoulderTopSlope;NewShoulderTopSlope;UseNewShoulderBaseSlope;NewShoulderBaseSlope;UseNewMaxHeightShoulderAsFraction;NewMaxHeightShoulderAsFraction;UseNewMinDistanceDikeToeStartDitch;NewMinDistanceDikeToeStartDitch;UseNewDitchDefinition;NewWidthDitchBottom;newSlopeAngleDitch;NewDepthDitch;ZoneType;ForbiddenZoneFactor;ZoneAreaRestSlopeCrestWidth;PLLineOffsetBelowDikeCrestMiddle;PLLineOffsetFactorBelowShoulderCrest;UsePLLineOffsetDryBelowDikeCrestMiddle;PLLineOffsetDryBelowDikeCrestMiddle;UsePLLineOffsetDryFactorBelowShoulderCrest;PLLineOffsetDryFactorBelowShoulderCrest;IntrusionVerticalWaterPressure;TL_DegreeOfConsolidation;water_height;water_height_low;water_height_decimerings_hoogte;max_waterheight"); + writer.WriteLine( + "16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0.9;0.2;13.056;0.9;0.8;1;1;klei;klei2;1;2;3;12;TRUE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.01;OptimizedSlopeAndShoulderAdaption;3.0;6.0;0.5;TRUE;1.8;TRUE;1.9;TRUE;2.9;TRUE;2.8;TRUE;2.7;TRUE;0.6;TRUE;2.6;TRUE;1.1;1.2;1.3;NoZones;0.5;1.6;1.0;0.1;TRUE;1.1;FALSE;0.11;Standard;10.1;1.2;1.3;1.4;1.5"); + writer.WriteLine( + "25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0.25;-0.25;0.8727;-0.25;-0.25;1;1;klei;klei2;1;2;3;12;FALSE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.2;SlopeAdaptionBeforeShoulderAdaption;4.5;6.5;0.25;FALSE;0.8;FALSE;0.9;FALSE;1.9;FALSE;1.8;FALSE;1.7;FALSE;0.7;FALSE;1.6;FALSE;1.4;1.5;1.6;ForbiddenZone;0.9;2.1; 1.1;0.11;FALSE; 1.0;TRUE;0.1;SemiTimeDependent;55.5;2.2;2.3;2.4;2.5"); } + } - private static void CreateScenariosFile(string filePath) + private static void CreateScenariosFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); - writer.WriteLine( - "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); - writer.WriteLine( - "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); - } + writer.WriteLine( + "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); + writer.WriteLine( + "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); + writer.WriteLine( + "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); } + } - private static void CreateScenariosFileWithOffsetData(string filePath) + private static void CreateScenariosFileWithOffsetData(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;UsePLLineOffsetBelowDikeCrestMiddle;PLLineOffsetBelowDikeCrestMiddle;UsePLLineOffsetFactorBelowShoulderCrest;PLLineOffsetFactorBelowShoulderCrest;head_pl3;head_pl4"); - writer.WriteLine( - "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000;1.1;2.2;3.3;4.4;TRUE;5.5;FALSE;6.6;7.7;8.8"); - writer.WriteLine( - "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000;0.1;0.2;0.3;0.4;FALSE;0.5;TRUE;0.6;0.7;0.8"); - } + writer.WriteLine( + "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;UsePLLineOffsetBelowDikeCrestMiddle;PLLineOffsetBelowDikeCrestMiddle;UsePLLineOffsetFactorBelowShoulderCrest;PLLineOffsetFactorBelowShoulderCrest;head_pl3;head_pl4"); + writer.WriteLine( + "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000;1.1;2.2;3.3;4.4;TRUE;5.5;FALSE;6.6;7.7;8.8"); + writer.WriteLine( + "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000;0.1;0.2;0.3;0.4;FALSE;0.5;TRUE;0.6;0.7;0.8"); } + } - private static void CreateScenariosWithHeadPl3AndHeadPl4File(string filePath) + private static void CreateScenariosWithHeadPl3AndHeadPl4File(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;head_pl3;head_pl4"); - writer.WriteLine( - "D1;1;0.001;0.002"); - writer.WriteLine( - "D2;1;0.003;0.004"); - } + writer.WriteLine( + "location_id;location_scenario_id;head_pl3;head_pl4"); + writer.WriteLine( + "D1;1;0.001;0.002"); + writer.WriteLine( + "D2;1;0.003;0.004"); } + } - private static void CreateScenariosWithHeadPl3AndHeadPl4OldFormatFile(string filePath) + private static void CreateScenariosWithHeadPl3AndHeadPl4OldFormatFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;HeadPl3;HeadPl4"); - writer.WriteLine( - "D1;1;0.011;0.012"); - writer.WriteLine( - "D2;1;0.013;0.014"); - } + writer.WriteLine( + "location_id;location_scenario_id;HeadPl3;HeadPl4"); + writer.WriteLine( + "D1;1;0.011;0.012"); + writer.WriteLine( + "D2;1;0.013;0.014"); } + } - private static void CreateScenariosWithPolderLevelFile(string filePath) + private static void CreateScenariosWithPolderLevelFile(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;polderlevel;"); - writer.WriteLine( - "D1;1;0.001;"); - writer.WriteLine( - "D2;1;0.003;"); - } + writer.WriteLine( + "location_id;location_scenario_id;polderlevel;"); + writer.WriteLine( + "D1;1;0.001;"); + writer.WriteLine( + "D2;1;0.003;"); } + } - private static void CreateScenariosWithHeadPL2File(string filePath) + private static void CreateScenariosWithHeadPL2File(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;head_pl2;"); - writer.WriteLine( - "D1;1;0.001;"); - writer.WriteLine( - "D2;1;0.003;"); - } + writer.WriteLine( + "location_id;location_scenario_id;head_pl2;"); + writer.WriteLine( + "D1;1;0.001;"); + writer.WriteLine( + "D2;1;0.003;"); } + } - private void CreateScenariosFileWithIllegalHeader(string filePath) + private void CreateScenariosFileWithIllegalHeader(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); - writer.WriteLine( - "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); - writer.WriteLine( - "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); - } + writer.WriteLine( + "location_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); + writer.WriteLine( + "D1;1;0.000;0.680;21.110;0.000;1.120;31.600;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); + writer.WriteLine( + "D2;1;0.000;1.680;22.110;2.000;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); } + } - private void CreateScenariosFileWithIllegalValues(string filePath) + private void CreateScenariosFileWithIllegalValues(string filePath) + { + using (StreamWriter writer = File.CreateText(filePath)) { - using (StreamWriter writer = File.CreateText(filePath)) - { - writer.WriteLine( - "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); - writer.WriteLine( - "D1;1;0.000;0.680;21.110;0.000;1.120;aa;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); - writer.WriteLine( - "D2;1;0.000;1.680;dd;22.110;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); - } + writer.WriteLine( + "location_id;location_scenario_id;water_height;water_height_low;dike_table_height;water_height_decimerings_hoogte;max_waterheight;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability"); + writer.WriteLine( + "D1;1;0.000;0.680;21.110;0.000;1.120;aa;0.000;1.300;31.730;63.310;0.000;1.3;0.000"); + writer.WriteLine( + "D2;1;0.000;1.680;dd;22.110;1.220;32.600;1.000;1.400;32.730;3.310;1.000;1.3;0.000"); } + } - private static void CheckCharacteristicPoints(IList characteristicPointsRecords) - { - Assert.AreEqual("D1", characteristicPointsRecords[0].SurfaceLineId); - Assert.AreEqual(1, characteristicPointsRecords[0].Volgnummer); + private static void CheckCharacteristicPoints(IList characteristicPointsRecords) + { + Assert.AreEqual("D1", characteristicPointsRecords[0].SurfaceLineId); + Assert.AreEqual(1, characteristicPointsRecords[0].Volgnummer); - Assert.AreEqual(117.94, characteristicPointsRecords[0].Points[0].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[0].Y); - Assert.AreEqual(0.12, characteristicPointsRecords[0].Points[0].Z); + Assert.AreEqual(117.94, characteristicPointsRecords[0].Points[0].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[0].Y); + Assert.AreEqual(0.12, characteristicPointsRecords[0].Points[0].Z); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].X); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].Y); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].Z); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].X); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].Y); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[1].Z); - Assert.AreEqual(73.99, characteristicPointsRecords[0].Points[2].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[2].Y); - Assert.AreEqual(-1.0, characteristicPointsRecords[0].Points[2].Z); + Assert.AreEqual(73.99, characteristicPointsRecords[0].Points[2].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[2].Y); + Assert.AreEqual(-1.0, characteristicPointsRecords[0].Points[2].Z); - Assert.AreEqual(72.55, characteristicPointsRecords[0].Points[3].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[3].Y); - Assert.AreEqual(-1.46, characteristicPointsRecords[0].Points[3].Z); + Assert.AreEqual(72.55, characteristicPointsRecords[0].Points[3].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[3].Y); + Assert.AreEqual(-1.46, characteristicPointsRecords[0].Points[3].Z); - Assert.AreEqual(67.9, characteristicPointsRecords[0].Points[4].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[4].Y); - Assert.AreEqual(1.07, characteristicPointsRecords[0].Points[4].Z); + Assert.AreEqual(67.9, characteristicPointsRecords[0].Points[4].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[4].Y); + Assert.AreEqual(1.07, characteristicPointsRecords[0].Points[4].Z); - Assert.AreEqual(63.31, characteristicPointsRecords[0].Points[5].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[5].Y); - Assert.AreEqual(1.36, characteristicPointsRecords[0].Points[5].Z); + Assert.AreEqual(63.31, characteristicPointsRecords[0].Points[5].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[5].Y); + Assert.AreEqual(1.36, characteristicPointsRecords[0].Points[5].Z); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].X); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].Y); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].Z); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].X); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].Y); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[6].Z); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].X); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].Y); - Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].Z); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].X); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].Y); + Assert.AreEqual(-1, characteristicPointsRecords[0].Points[7].Z); - Assert.AreEqual(55.17, characteristicPointsRecords[0].Points[8].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[8].Y); - Assert.AreEqual(4.46, characteristicPointsRecords[0].Points[8].Z); + Assert.AreEqual(55.17, characteristicPointsRecords[0].Points[8].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[8].Y); + Assert.AreEqual(4.46, characteristicPointsRecords[0].Points[8].Z); - Assert.AreEqual(54.25, characteristicPointsRecords[0].Points[9].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[9].Y); - Assert.AreEqual(4.69, characteristicPointsRecords[0].Points[9].Z); + Assert.AreEqual(54.25, characteristicPointsRecords[0].Points[9].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[9].Y); + Assert.AreEqual(4.69, characteristicPointsRecords[0].Points[9].Z); - Assert.AreEqual(51.75, characteristicPointsRecords[0].Points[10].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[10].Y); - Assert.AreEqual(4.662, characteristicPointsRecords[0].Points[10].Z); + Assert.AreEqual(51.75, characteristicPointsRecords[0].Points[10].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[10].Y); + Assert.AreEqual(4.662, characteristicPointsRecords[0].Points[10].Z); - Assert.AreEqual(50.11, characteristicPointsRecords[0].Points[11].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[11].Y); - Assert.AreEqual(4.46, characteristicPointsRecords[0].Points[11].Z); + Assert.AreEqual(50.11, characteristicPointsRecords[0].Points[11].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[11].Y); + Assert.AreEqual(4.46, characteristicPointsRecords[0].Points[11].Z); - Assert.AreEqual(40.48, characteristicPointsRecords[0].Points[12].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[12].Y); - Assert.AreEqual(1.94, characteristicPointsRecords[0].Points[12].Z); + Assert.AreEqual(40.48, characteristicPointsRecords[0].Points[12].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[12].Y); + Assert.AreEqual(1.94, characteristicPointsRecords[0].Points[12].Z); - Assert.AreEqual(32.21, characteristicPointsRecords[0].Points[13].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[13].Y); - Assert.AreEqual(1.67, characteristicPointsRecords[0].Points[13].Z); + Assert.AreEqual(32.21, characteristicPointsRecords[0].Points[13].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[13].Y); + Assert.AreEqual(1.67, characteristicPointsRecords[0].Points[13].Z); - Assert.AreEqual(31.6, characteristicPointsRecords[0].Points[14].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[14].Y); - Assert.AreEqual(1.3, characteristicPointsRecords[0].Points[14].Z); + Assert.AreEqual(31.6, characteristicPointsRecords[0].Points[14].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[14].Y); + Assert.AreEqual(1.3, characteristicPointsRecords[0].Points[14].Z); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[15].X); - Assert.AreEqual(0, characteristicPointsRecords[0].Points[15].Y); - Assert.AreEqual(0.68, characteristicPointsRecords[0].Points[15].Z); - } + Assert.AreEqual(0, characteristicPointsRecords[0].Points[15].X); + Assert.AreEqual(0, characteristicPointsRecords[0].Points[15].Y); + Assert.AreEqual(0.68, characteristicPointsRecords[0].Points[15].Z); + } - private static void CheckSurfaceLine(IList surfaceLineRecords) - { - Assert.AreEqual("D1", surfaceLineRecords[0].SurfaceLineId); - Assert.AreEqual(0.0, surfaceLineRecords[0].Xcoors[0]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[0]); - Assert.AreEqual(0.680, surfaceLineRecords[0].Zcoors[0]); + private static void CheckSurfaceLine(IList surfaceLineRecords) + { + Assert.AreEqual("D1", surfaceLineRecords[0].SurfaceLineId); + Assert.AreEqual(0.0, surfaceLineRecords[0].Xcoors[0]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[0]); + Assert.AreEqual(0.680, surfaceLineRecords[0].Zcoors[0]); - Assert.AreEqual(21.110, surfaceLineRecords[0].Xcoors[1]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[1]); - Assert.AreEqual(1.120, surfaceLineRecords[0].Zcoors[1]); + Assert.AreEqual(21.110, surfaceLineRecords[0].Xcoors[1]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[1]); + Assert.AreEqual(1.120, surfaceLineRecords[0].Zcoors[1]); - Assert.AreEqual(31.600, surfaceLineRecords[0].Xcoors[2]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[2]); - Assert.AreEqual(1.300, surfaceLineRecords[0].Zcoors[2]); + Assert.AreEqual(31.600, surfaceLineRecords[0].Xcoors[2]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[2]); + Assert.AreEqual(1.300, surfaceLineRecords[0].Zcoors[2]); - Assert.AreEqual(52.630, surfaceLineRecords[0].Xcoors[10]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[10]); - Assert.AreEqual(4.770, surfaceLineRecords[0].Zcoors[10]); + Assert.AreEqual(52.630, surfaceLineRecords[0].Xcoors[10]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[10]); + Assert.AreEqual(4.770, surfaceLineRecords[0].Zcoors[10]); - Assert.AreEqual(72.370, surfaceLineRecords[0].Xcoors[22]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[22]); - Assert.AreEqual(-1.060, surfaceLineRecords[0].Zcoors[22]); + Assert.AreEqual(72.370, surfaceLineRecords[0].Xcoors[22]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[22]); + Assert.AreEqual(-1.060, surfaceLineRecords[0].Zcoors[22]); - Assert.AreEqual(86.660, surfaceLineRecords[0].Xcoors[30]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[30]); - Assert.AreEqual(0.270, surfaceLineRecords[0].Zcoors[30]); + Assert.AreEqual(86.660, surfaceLineRecords[0].Xcoors[30]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[30]); + Assert.AreEqual(0.270, surfaceLineRecords[0].Zcoors[30]); - Assert.AreEqual(117.940, surfaceLineRecords[0].Xcoors[32]); - Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[32]); - Assert.AreEqual(0.120, surfaceLineRecords[0].Zcoors[32]); - } + Assert.AreEqual(117.940, surfaceLineRecords[0].Xcoors[32]); + Assert.AreEqual(0.0, surfaceLineRecords[0].Ycoors[32]); + Assert.AreEqual(0.120, surfaceLineRecords[0].Zcoors[32]); } } \ No newline at end of file Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/ConversionHelperTests.cs =================================================================== diff -u -r4070 -r4143 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 4070) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 4143) @@ -31,555 +31,578 @@ using Deltares.Standard.Logging; using NUnit.Framework; -namespace Deltares.Dam.Tests.DamEngineIo +namespace Deltares.Dam.Tests.DamEngineIo; + +[TestFixture] +public class ConversionHelperTests { - [TestFixture] - public class ConversionHelperTests + [Test] + [TestCase(InputDamProjectType.Design, DamProjectType.Design)] + [TestCase(InputDamProjectType.Operational, DamProjectType.Calamity)] + public void CanConvertToDamProjectType(InputDamProjectType inputDamProjectType, DamProjectType damProjectType) { - [Test] - [TestCase(InputDamProjectType.Design, DamProjectType.Design)] - [TestCase(InputDamProjectType.Operational, DamProjectType.Calamity)] - public void CanConvertToDamProjectType(InputDamProjectType inputDamProjectType, DamProjectType damProjectType) - { - Assert.AreEqual(damProjectType, ConversionHelper.ConvertToDamProjectType(inputDamProjectType)); - } + Assert.AreEqual(damProjectType, ConversionHelper.ConvertToDamProjectType(inputDamProjectType)); + } - [Test] - [TestCase(DamProjectType.Design, InputDamProjectType.Design)] - [TestCase(DamProjectType.Calamity, InputDamProjectType.Operational)] - public void CanConvertToInputDamProjectType(DamProjectType damProjectType, InputDamProjectType inputDamProjectType) - { - Assert.AreEqual(inputDamProjectType, ConversionHelper.ConvertToInputDamProjectType(damProjectType)); - } + [Test] + [TestCase(DamProjectType.Design, InputDamProjectType.Design)] + [TestCase(DamProjectType.Calamity, InputDamProjectType.Operational)] + public void CanConvertToInputDamProjectType(DamProjectType damProjectType, InputDamProjectType inputDamProjectType) + { + Assert.AreEqual(inputDamProjectType, ConversionHelper.ConvertToInputDamProjectType(damProjectType)); + } - [Test] - [TestCase(PLLineCreationMethod.ExpertKnowledgeLinearInDike, LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeLinearInDike)] - [TestCase(PLLineCreationMethod.ExpertKnowledgeRRD, LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeRRD)] - [TestCase(PLLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD, LocationWaternetOptionsPhreaticLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD)] - [TestCase(PLLineCreationMethod.None, LocationWaternetOptionsPhreaticLineCreationMethod.None)] - [TestCase(PLLineCreationMethod.Sensors, LocationWaternetOptionsPhreaticLineCreationMethod.Sensors)] - public void CanConvertToPlLineCreationMethod(PLLineCreationMethod plLineCreationMethod, LocationWaternetOptionsPhreaticLineCreationMethod inputPhreaticLineCreationMethod) - { - Assert.AreEqual(inputPhreaticLineCreationMethod, ConversionHelper.ConvertToInputPhreaticLineCreationMethod(plLineCreationMethod)); - } + [Test] + [TestCase(PLLineCreationMethod.ExpertKnowledgeLinearInDike, LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeLinearInDike)] + [TestCase(PLLineCreationMethod.ExpertKnowledgeRRD, LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeRRD)] + [TestCase(PLLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD, LocationWaternetOptionsPhreaticLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD)] + [TestCase(PLLineCreationMethod.None, LocationWaternetOptionsPhreaticLineCreationMethod.None)] + [TestCase(PLLineCreationMethod.Sensors, LocationWaternetOptionsPhreaticLineCreationMethod.Sensors)] + public void CanConvertToPlLineCreationMethod(PLLineCreationMethod plLineCreationMethod, LocationWaternetOptionsPhreaticLineCreationMethod inputPhreaticLineCreationMethod) + { + Assert.AreEqual(inputPhreaticLineCreationMethod, ConversionHelper.ConvertToInputPhreaticLineCreationMethod(plLineCreationMethod)); + } - [Test] - [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeLinearInDike, PLLineCreationMethod.ExpertKnowledgeLinearInDike)] - [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeRRD, PLLineCreationMethod.ExpertKnowledgeRRD)] - [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD, PLLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD)] - [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.None, PLLineCreationMethod.None)] - [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.Sensors, PLLineCreationMethod.Sensors)] - public void CanConvertToInputPlLineCreationMethod(LocationWaternetOptionsPhreaticLineCreationMethod inputPhreaticLineCreationMethod, PLLineCreationMethod plLineCreationMethod) - { - Assert.AreEqual(plLineCreationMethod, ConversionHelper.ConvertToPhreaticLineCreationMethod(inputPhreaticLineCreationMethod)); - } + [Test] + [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeLinearInDike, PLLineCreationMethod.ExpertKnowledgeLinearInDike)] + [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.ExpertKnowledgeRRD, PLLineCreationMethod.ExpertKnowledgeRRD)] + [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD, PLLineCreationMethod.GaugesWithFallbackToExpertKnowledgeRRD)] + [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.None, PLLineCreationMethod.None)] + [TestCase(LocationWaternetOptionsPhreaticLineCreationMethod.Sensors, PLLineCreationMethod.Sensors)] + public void CanConvertToInputPlLineCreationMethod(LocationWaternetOptionsPhreaticLineCreationMethod inputPhreaticLineCreationMethod, PLLineCreationMethod plLineCreationMethod) + { + Assert.AreEqual(plLineCreationMethod, ConversionHelper.ConvertToPhreaticLineCreationMethod(inputPhreaticLineCreationMethod)); + } - [Test] - [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.FullHydroStatic, IntrusionVerticalWaterPressureType.FullHydroStatic)] - [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.HydroStatic, IntrusionVerticalWaterPressureType.HydroStatic)] - [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.Linear, IntrusionVerticalWaterPressureType.Linear)] - [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.SemiTimeDependent, IntrusionVerticalWaterPressureType.SemiTimeDependent)] - [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.Standard, IntrusionVerticalWaterPressureType.Standard)] - public void CanConvertToIntrusionVerticalWaterPressureType(LocationWaternetOptionsIntrusionVerticalWaterPressure inputIntrusionVerticalWaterPressureType, IntrusionVerticalWaterPressureType intrusionVerticalWaterPressureType) - { - Assert.AreEqual(intrusionVerticalWaterPressureType, ConversionHelper.ConvertToIntrusionVerticalWaterPressure(inputIntrusionVerticalWaterPressureType)); - } + [Test] + [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.FullHydroStatic, IntrusionVerticalWaterPressureType.FullHydroStatic)] + [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.HydroStatic, IntrusionVerticalWaterPressureType.HydroStatic)] + [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.Linear, IntrusionVerticalWaterPressureType.Linear)] + [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.SemiTimeDependent, IntrusionVerticalWaterPressureType.SemiTimeDependent)] + [TestCase(LocationWaternetOptionsIntrusionVerticalWaterPressure.Standard, IntrusionVerticalWaterPressureType.Standard)] + public void CanConvertToIntrusionVerticalWaterPressureType(LocationWaternetOptionsIntrusionVerticalWaterPressure inputIntrusionVerticalWaterPressureType, IntrusionVerticalWaterPressureType intrusionVerticalWaterPressureType) + { + Assert.AreEqual(intrusionVerticalWaterPressureType, ConversionHelper.ConvertToIntrusionVerticalWaterPressure(inputIntrusionVerticalWaterPressureType)); + } - [Test] - [TestCase(IntrusionVerticalWaterPressureType.FullHydroStatic, LocationWaternetOptionsIntrusionVerticalWaterPressure.FullHydroStatic)] - [TestCase(IntrusionVerticalWaterPressureType.HydroStatic, LocationWaternetOptionsIntrusionVerticalWaterPressure.HydroStatic)] - [TestCase(IntrusionVerticalWaterPressureType.Linear, LocationWaternetOptionsIntrusionVerticalWaterPressure.Linear)] - [TestCase(IntrusionVerticalWaterPressureType.SemiTimeDependent, LocationWaternetOptionsIntrusionVerticalWaterPressure.SemiTimeDependent)] - [TestCase(IntrusionVerticalWaterPressureType.Standard, LocationWaternetOptionsIntrusionVerticalWaterPressure.Standard)] - public void CanConvertToInputIntrusionVerticalWaterPressureType(IntrusionVerticalWaterPressureType intrusionVerticalWaterPressureType, LocationWaternetOptionsIntrusionVerticalWaterPressure inputIntrusionVerticalWaterPressureType) - { - Assert.AreEqual(inputIntrusionVerticalWaterPressureType, ConversionHelper.ConvertToInputIntrusionVerticalWaterPressure(intrusionVerticalWaterPressureType)); - } + [Test] + [TestCase(IntrusionVerticalWaterPressureType.FullHydroStatic, LocationWaternetOptionsIntrusionVerticalWaterPressure.FullHydroStatic)] + [TestCase(IntrusionVerticalWaterPressureType.HydroStatic, LocationWaternetOptionsIntrusionVerticalWaterPressure.HydroStatic)] + [TestCase(IntrusionVerticalWaterPressureType.Linear, LocationWaternetOptionsIntrusionVerticalWaterPressure.Linear)] + [TestCase(IntrusionVerticalWaterPressureType.SemiTimeDependent, LocationWaternetOptionsIntrusionVerticalWaterPressure.SemiTimeDependent)] + [TestCase(IntrusionVerticalWaterPressureType.Standard, LocationWaternetOptionsIntrusionVerticalWaterPressure.Standard)] + public void CanConvertToInputIntrusionVerticalWaterPressureType(IntrusionVerticalWaterPressureType intrusionVerticalWaterPressureType, LocationWaternetOptionsIntrusionVerticalWaterPressure inputIntrusionVerticalWaterPressureType) + { + Assert.AreEqual(inputIntrusionVerticalWaterPressureType, ConversionHelper.ConvertToInputIntrusionVerticalWaterPressure(intrusionVerticalWaterPressureType)); + } - [Test] - [TestCase(ConversionHelper.CpNone, CharacteristicPointType.None)] - [TestCase(ConversionHelper.CpSurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside)] - [TestCase(ConversionHelper.CpDikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver)] - [TestCase(ConversionHelper.CpShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside)] - [TestCase(ConversionHelper.CpShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside)] - [TestCase(ConversionHelper.CpDikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver)] - [TestCase(ConversionHelper.CpDikeLine, CharacteristicPointType.DikeLine)] - [TestCase(ConversionHelper.CpTrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside)] - [TestCase(ConversionHelper.CpTrafficLoadInside, CharacteristicPointType.TrafficLoadInside)] - [TestCase(ConversionHelper.CpDikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder)] - [TestCase(ConversionHelper.CpShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside)] - [TestCase(ConversionHelper.CpShoulderTopInside, CharacteristicPointType.ShoulderTopInside)] - [TestCase(ConversionHelper.CpDikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder)] - [TestCase(ConversionHelper.CpDitchDikeSide, CharacteristicPointType.DitchDikeSide)] - [TestCase(ConversionHelper.CpBottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide)] - [TestCase(ConversionHelper.CpBottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide)] - [TestCase(ConversionHelper.CpDitchPolderSide, CharacteristicPointType.DitchPolderSide)] - [TestCase(ConversionHelper.CpSurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside)] - public void CanConvertToCharacteristicPointType(int inputPointType, CharacteristicPointType characteristicPointType) - { - Assert.AreEqual(characteristicPointType, ConversionHelper.ConvertToDamPointType(inputPointType)); - } + [Test] + [TestCase(ConversionHelper.CpNone, CharacteristicPointType.None)] + [TestCase(ConversionHelper.CpSurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside)] + [TestCase(ConversionHelper.CpDikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver)] + [TestCase(ConversionHelper.CpShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside)] + [TestCase(ConversionHelper.CpShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside)] + [TestCase(ConversionHelper.CpDikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver)] + [TestCase(ConversionHelper.CpDikeLine, CharacteristicPointType.DikeLine)] + [TestCase(ConversionHelper.CpTrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside)] + [TestCase(ConversionHelper.CpTrafficLoadInside, CharacteristicPointType.TrafficLoadInside)] + [TestCase(ConversionHelper.CpDikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder)] + [TestCase(ConversionHelper.CpShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside)] + [TestCase(ConversionHelper.CpShoulderTopInside, CharacteristicPointType.ShoulderTopInside)] + [TestCase(ConversionHelper.CpDikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder)] + [TestCase(ConversionHelper.CpDitchDikeSide, CharacteristicPointType.DitchDikeSide)] + [TestCase(ConversionHelper.CpBottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide)] + [TestCase(ConversionHelper.CpBottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide)] + [TestCase(ConversionHelper.CpDitchPolderSide, CharacteristicPointType.DitchPolderSide)] + [TestCase(ConversionHelper.CpSurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside)] + public void CanConvertToCharacteristicPointType(int inputPointType, CharacteristicPointType characteristicPointType) + { + Assert.AreEqual(characteristicPointType, ConversionHelper.ConvertToDamPointType(inputPointType)); + } - [Test] - [TestCase(CharacteristicPointType.None, ConversionHelper.CpNone)] - [TestCase(CharacteristicPointType.SurfaceLevelOutside, ConversionHelper.CpSurfaceLevelOutside)] - [TestCase(CharacteristicPointType.DikeToeAtRiver, ConversionHelper.CpDikeToeAtRiver)] - [TestCase(CharacteristicPointType.ShoulderTopOutside, ConversionHelper.CpShoulderTopOutside)] - [TestCase(CharacteristicPointType.ShoulderBaseOutside, ConversionHelper.CpShoulderBaseOutside)] - [TestCase(CharacteristicPointType.DikeTopAtRiver, ConversionHelper.CpDikeTopAtRiver)] - [TestCase(CharacteristicPointType.DikeLine, ConversionHelper.CpDikeLine)] - [TestCase(CharacteristicPointType.TrafficLoadOutside, ConversionHelper.CpTrafficLoadOutside)] - [TestCase(CharacteristicPointType.TrafficLoadInside, ConversionHelper.CpTrafficLoadInside)] - [TestCase(CharacteristicPointType.DikeTopAtPolder, ConversionHelper.CpDikeTopAtPolder)] - [TestCase(CharacteristicPointType.ShoulderBaseInside, ConversionHelper.CpShoulderBaseInside)] - [TestCase(CharacteristicPointType.ShoulderTopInside, ConversionHelper.CpShoulderTopInside)] - [TestCase(CharacteristicPointType.DikeToeAtPolder, ConversionHelper.CpDikeToeAtPolder)] - [TestCase(CharacteristicPointType.DitchDikeSide, ConversionHelper.CpDitchDikeSide)] - [TestCase(CharacteristicPointType.BottomDitchDikeSide, ConversionHelper.CpBottomDitchDikeSide)] - [TestCase(CharacteristicPointType.BottomDitchPolderSide, ConversionHelper.CpBottomDitchPolderSide)] - [TestCase(CharacteristicPointType.DitchPolderSide, ConversionHelper.CpDitchPolderSide)] - [TestCase(CharacteristicPointType.SurfaceLevelInside, ConversionHelper.CpSurfaceLevelInside)] - public void CanConvertToInputPointType(CharacteristicPointType characteristicPointType, int inputPointType) - { - Assert.AreEqual(inputPointType, ConversionHelper.ConvertToInputPointType(characteristicPointType)); - } + [Test] + [TestCase(CharacteristicPointType.None, ConversionHelper.CpNone)] + [TestCase(CharacteristicPointType.SurfaceLevelOutside, ConversionHelper.CpSurfaceLevelOutside)] + [TestCase(CharacteristicPointType.DikeToeAtRiver, ConversionHelper.CpDikeToeAtRiver)] + [TestCase(CharacteristicPointType.ShoulderTopOutside, ConversionHelper.CpShoulderTopOutside)] + [TestCase(CharacteristicPointType.ShoulderBaseOutside, ConversionHelper.CpShoulderBaseOutside)] + [TestCase(CharacteristicPointType.DikeTopAtRiver, ConversionHelper.CpDikeTopAtRiver)] + [TestCase(CharacteristicPointType.DikeLine, ConversionHelper.CpDikeLine)] + [TestCase(CharacteristicPointType.TrafficLoadOutside, ConversionHelper.CpTrafficLoadOutside)] + [TestCase(CharacteristicPointType.TrafficLoadInside, ConversionHelper.CpTrafficLoadInside)] + [TestCase(CharacteristicPointType.DikeTopAtPolder, ConversionHelper.CpDikeTopAtPolder)] + [TestCase(CharacteristicPointType.ShoulderBaseInside, ConversionHelper.CpShoulderBaseInside)] + [TestCase(CharacteristicPointType.ShoulderTopInside, ConversionHelper.CpShoulderTopInside)] + [TestCase(CharacteristicPointType.DikeToeAtPolder, ConversionHelper.CpDikeToeAtPolder)] + [TestCase(CharacteristicPointType.DitchDikeSide, ConversionHelper.CpDitchDikeSide)] + [TestCase(CharacteristicPointType.BottomDitchDikeSide, ConversionHelper.CpBottomDitchDikeSide)] + [TestCase(CharacteristicPointType.BottomDitchPolderSide, ConversionHelper.CpBottomDitchPolderSide)] + [TestCase(CharacteristicPointType.DitchPolderSide, ConversionHelper.CpDitchPolderSide)] + [TestCase(CharacteristicPointType.SurfaceLevelInside, ConversionHelper.CpSurfaceLevelInside)] + public void CanConvertToInputPointType(CharacteristicPointType characteristicPointType, int inputPointType) + { + Assert.AreEqual(inputPointType, ConversionHelper.ConvertToInputPointType(characteristicPointType)); + } - [Test] - [TestCase(0, CalculationResult.NoRun)] - [TestCase(1, CalculationResult.Succeeded)] - [TestCase(2, CalculationResult.NoInput)] - [TestCase(3, CalculationResult.NoLicense)] - [TestCase(4, CalculationResult.UserAbort)] - [TestCase(5, CalculationResult.InvalidInputStructure)] - [TestCase(6, CalculationResult.InvalidInputData)] - [TestCase(7, CalculationResult.RunFailed)] - [TestCase(8, CalculationResult.UnexpectedError)] - public void CanConvertToOutputCalculationResult(int result, CalculationResult calculationResult) - { - Assert.AreEqual(result, ConversionHelper.ConvertToOutputCalculationResult(calculationResult)); - } + [Test] + [TestCase(0, CalculationResult.NoRun)] + [TestCase(1, CalculationResult.Succeeded)] + [TestCase(2, CalculationResult.NoInput)] + [TestCase(3, CalculationResult.NoLicense)] + [TestCase(4, CalculationResult.UserAbort)] + [TestCase(5, CalculationResult.InvalidInputStructure)] + [TestCase(6, CalculationResult.InvalidInputData)] + [TestCase(7, CalculationResult.RunFailed)] + [TestCase(8, CalculationResult.UnexpectedError)] + public void CanConvertToOutputCalculationResult(int result, CalculationResult calculationResult) + { + Assert.AreEqual(result, ConversionHelper.ConvertToOutputCalculationResult(calculationResult)); + } - [Test] - [TestCase(CalculationResult.NoRun, 0)] - [TestCase(CalculationResult.Succeeded, 1)] - [TestCase(CalculationResult.NoInput, 2)] - [TestCase(CalculationResult.NoLicense, 3)] - [TestCase(CalculationResult.UserAbort, 4)] - [TestCase(CalculationResult.InvalidInputStructure, 5)] - [TestCase(CalculationResult.InvalidInputData, 6)] - [TestCase(CalculationResult.RunFailed, 7)] - [TestCase(CalculationResult.UnexpectedError, 8)] - public void CanConvertToCalculationResult(CalculationResult result, int calculationResult) - { - Assert.AreEqual(result, ConversionHelper.ConvertToCalculationResult(calculationResult)); - } + [Test] + [TestCase(CalculationResult.NoRun, 0)] + [TestCase(CalculationResult.Succeeded, 1)] + [TestCase(CalculationResult.NoInput, 2)] + [TestCase(CalculationResult.NoLicense, 3)] + [TestCase(CalculationResult.UserAbort, 4)] + [TestCase(CalculationResult.InvalidInputStructure, 5)] + [TestCase(CalculationResult.InvalidInputData, 6)] + [TestCase(CalculationResult.RunFailed, 7)] + [TestCase(CalculationResult.UnexpectedError, 8)] + public void CanConvertToCalculationResult(CalculationResult result, int calculationResult) + { + Assert.AreEqual(result, ConversionHelper.ConvertToCalculationResult(calculationResult)); + } - [Test] - [TestCase(0, WaterpressureInterpolationModel.Automatic)] - [TestCase(1, WaterpressureInterpolationModel.Hydrostatic)] - public void CanConvertToWaterpressureInterpolationModel(int inputInterpolationModel, WaterpressureInterpolationModel interpolationModel) - { - Assert.AreEqual(interpolationModel, ConversionHelper.ConvertToWaterpressureInterpolationModel(inputInterpolationModel)); - } + [Test] + [TestCase(0, WaterpressureInterpolationModel.Automatic)] + [TestCase(1, WaterpressureInterpolationModel.Hydrostatic)] + public void CanConvertToWaterpressureInterpolationModel(int inputInterpolationModel, WaterpressureInterpolationModel interpolationModel) + { + Assert.AreEqual(interpolationModel, ConversionHelper.ConvertToWaterpressureInterpolationModel(inputInterpolationModel)); + } - [Test] - [TestCase(SoilProfileType.SoilProfile1D, 0)] - [TestCase(SoilProfileType.SoilGeometryStiFile, 2)] - public void CanConvertToInputSoilGeometryType(SoilProfileType soilProfileType, int inputSoilGeometryType) - { - Assert.AreEqual(inputSoilGeometryType, ConversionHelper.ConvertToInputSoilProfileType(soilProfileType)); - } + [Test] + [TestCase(SoilProfileType.SoilProfile1D, 0)] + [TestCase(SoilProfileType.SoilGeometryStiFile, 2)] + public void CanConvertToInputSoilGeometryType(SoilProfileType soilProfileType, int inputSoilGeometryType) + { + Assert.AreEqual(inputSoilGeometryType, ConversionHelper.ConvertToInputSoilProfileType(soilProfileType)); + } - [Test] - [TestCase(0, SoilProfileType.SoilProfile1D)] - [TestCase(2, SoilProfileType.SoilGeometryStiFile)] - public void CanConvertToSoilGeometryType(int inputSoilGeometryType, SoilProfileType soilProfileType) - { - Assert.AreEqual(soilProfileType, ConversionHelper.ConvertToSoilProfileType(inputSoilGeometryType)); - } + [Test] + [TestCase(0, SoilProfileType.SoilProfile1D)] + [TestCase(2, SoilProfileType.SoilGeometryStiFile)] + public void CanConvertToSoilGeometryType(int inputSoilGeometryType, SoilProfileType soilProfileType) + { + Assert.AreEqual(soilProfileType, ConversionHelper.ConvertToSoilProfileType(inputSoilGeometryType)); + } - [Test] - [TestCase(FailureMechanismSystemType.StabilityInside, ConversionHelper.InputFailureMechanismStabilityInside)] - [TestCase(FailureMechanismSystemType.StabilityOutside, ConversionHelper.InputFailureMechanismStabilityOutside)] - [TestCase(FailureMechanismSystemType.Piping, ConversionHelper.InputFailureMechanismPiping)] - public void CanConvertToInputFailureMechanismSystemType(FailureMechanismSystemType failureMechanismSystemType, int inputFailureMechanismSystemType) - { - Assert.AreEqual(inputFailureMechanismSystemType, ConversionHelper.ConvertToInputFailureMechanismSystemType(failureMechanismSystemType)); - } + [Test] + [TestCase(FailureMechanismSystemType.StabilityInside, ConversionHelper.InputFailureMechanismStabilityInside)] + [TestCase(FailureMechanismSystemType.StabilityOutside, ConversionHelper.InputFailureMechanismStabilityOutside)] + [TestCase(FailureMechanismSystemType.Piping, ConversionHelper.InputFailureMechanismPiping)] + public void CanConvertToInputFailureMechanismSystemType(FailureMechanismSystemType failureMechanismSystemType, int inputFailureMechanismSystemType) + { + Assert.AreEqual(inputFailureMechanismSystemType, ConversionHelper.ConvertToInputFailureMechanismSystemType(failureMechanismSystemType)); + } - [Test] - [TestCase(ConversionHelper.InputFailureMechanismStabilityInside, FailureMechanismSystemType.StabilityInside)] - [TestCase(ConversionHelper.InputFailureMechanismStabilityOutside, FailureMechanismSystemType.StabilityOutside)] - [TestCase(ConversionHelper.InputFailureMechanismPiping, FailureMechanismSystemType.Piping)] - public void CanConvertToFailureMechanismSystemType(int inputFailureMechanismSystemType, FailureMechanismSystemType failureMechanismSystemType) - { - Assert.AreEqual(failureMechanismSystemType, ConversionHelper.ConvertToFailureMechanismSystemType(inputFailureMechanismSystemType)); - } + [Test] + [TestCase(ConversionHelper.InputFailureMechanismStabilityInside, FailureMechanismSystemType.StabilityInside)] + [TestCase(ConversionHelper.InputFailureMechanismStabilityOutside, FailureMechanismSystemType.StabilityOutside)] + [TestCase(ConversionHelper.InputFailureMechanismPiping, FailureMechanismSystemType.Piping)] + public void CanConvertToFailureMechanismSystemType(int inputFailureMechanismSystemType, FailureMechanismSystemType failureMechanismSystemType) + { + Assert.AreEqual(failureMechanismSystemType, ConversionHelper.ConvertToFailureMechanismSystemType(inputFailureMechanismSystemType)); + } - [Test] - [TestCase(FailureMechanismSystemType.StabilityInside, ConversionHelper.InputSegmentFailureMechanismStability)] - [TestCase(FailureMechanismSystemType.StabilityOutside, ConversionHelper.InputSegmentFailureMechanismStability)] - [TestCase(FailureMechanismSystemType.Piping, ConversionHelper.InputSegmentFailureMechanismPiping)] - public void CanConvertToInputSegmentFailureMechanismType(FailureMechanismSystemType failureMechanismSystemType, int inputFailureMechanismSystemType) - { - Assert.AreEqual(inputFailureMechanismSystemType, ConversionHelper.ConvertToInputSegmentFailureMechanismType(failureMechanismSystemType)); - } + [Test] + [TestCase(FailureMechanismSystemType.StabilityInside, ConversionHelper.InputSegmentFailureMechanismStability)] + [TestCase(FailureMechanismSystemType.StabilityOutside, ConversionHelper.InputSegmentFailureMechanismStability)] + [TestCase(FailureMechanismSystemType.Piping, ConversionHelper.InputSegmentFailureMechanismPiping)] + public void CanConvertToInputSegmentFailureMechanismType(FailureMechanismSystemType failureMechanismSystemType, int inputFailureMechanismSystemType) + { + Assert.AreEqual(inputFailureMechanismSystemType, ConversionHelper.ConvertToInputSegmentFailureMechanismType(failureMechanismSystemType)); + } - [Test] - [TestCase(ConversionHelper.InputSegmentFailureMechanismStability, FailureMechanismSystemType.StabilityInside)] - [TestCase(ConversionHelper.InputSegmentFailureMechanismPiping, FailureMechanismSystemType.Piping)] - public void CanConvertToSegmentFailureMechanismType(int inputFailureMechanismSystemType, FailureMechanismSystemType failureMechanismSystemType) - { - Assert.AreEqual(failureMechanismSystemType, ConversionHelper.ConvertToSegmentFailureMechanismType(inputFailureMechanismSystemType)); - } + [Test] + [TestCase(ConversionHelper.InputSegmentFailureMechanismStability, FailureMechanismSystemType.StabilityInside)] + [TestCase(ConversionHelper.InputSegmentFailureMechanismPiping, FailureMechanismSystemType.Piping)] + public void CanConvertToSegmentFailureMechanismType(int inputFailureMechanismSystemType, FailureMechanismSystemType failureMechanismSystemType) + { + Assert.AreEqual(failureMechanismSystemType, ConversionHelper.ConvertToSegmentFailureMechanismType(inputFailureMechanismSystemType)); + } - [Test] - [TestCase(InputAnalysisType.AdaptGeometry, AnalysisType.AdaptGeometry)] - [TestCase(InputAnalysisType.NoAdaption, AnalysisType.NoAdaption)] - public void CanConvertToInputAnalysisType(AnalysisType analysisType, InputAnalysisType inputAnalysisType) - { - Assert.AreEqual(inputAnalysisType, ConversionHelper.ConvertToInputAnalysisType(analysisType)); - } + [Test] + [TestCase(InputAnalysisType.AdaptGeometry, AnalysisType.AdaptGeometry)] + [TestCase(InputAnalysisType.NoAdaption, AnalysisType.NoAdaption)] + public void CanConvertToInputAnalysisType(AnalysisType analysisType, InputAnalysisType inputAnalysisType) + { + Assert.AreEqual(inputAnalysisType, ConversionHelper.ConvertToInputAnalysisType(analysisType)); + } - [Test] - [TestCase(AnalysisType.AdaptGeometry, InputAnalysisType.AdaptGeometry)] - [TestCase(AnalysisType.NoAdaption, InputAnalysisType.NoAdaption)] - public void CanConvertToAnalysisType(InputAnalysisType inputAnalysisType, AnalysisType analysisType) - { - Assert.AreEqual(analysisType, ConversionHelper.ConvertToAnalysisType(inputAnalysisType)); - } + [Test] + [TestCase(AnalysisType.AdaptGeometry, InputAnalysisType.AdaptGeometry)] + [TestCase(AnalysisType.NoAdaption, InputAnalysisType.NoAdaption)] + public void CanConvertToAnalysisType(InputAnalysisType inputAnalysisType, AnalysisType analysisType) + { + Assert.AreEqual(analysisType, ConversionHelper.ConvertToAnalysisType(inputAnalysisType)); + } - [Test] - [TestCase(MStabZonesType.NoZones, ConversionHelper.InputZoneTypeNoZones)] - [TestCase(MStabZonesType.ForbiddenZone, ConversionHelper.InputZoneTypesForbiddenZones)] - public void CanConvertToInputZoneType(MStabZonesType zoneType, int inputZoneType) - { - Assert.AreEqual(inputZoneType, ConversionHelper.ConvertToInputZoneType(zoneType)); - } + [Test] + [TestCase(MStabZonesType.NoZones, ConversionHelper.InputZoneTypeNoZones)] + [TestCase(MStabZonesType.ForbiddenZone, ConversionHelper.InputZoneTypesForbiddenZones)] + public void CanConvertToInputZoneType(MStabZonesType zoneType, int inputZoneType) + { + Assert.AreEqual(inputZoneType, ConversionHelper.ConvertToInputZoneType(zoneType)); + } - [Test] - [TestCase(ConversionHelper.InputZoneTypeNoZones, MStabZonesType.NoZones)] - [TestCase(ConversionHelper.InputZoneTypesForbiddenZones, MStabZonesType.ForbiddenZone)] - public void CanConvertToZoneType(int inputZoneType, MStabZonesType zoneType) - { - Assert.AreEqual(zoneType, ConversionHelper.ConvertToZoneType(inputZoneType)); - } + [Test] + [TestCase(ConversionHelper.InputZoneTypeNoZones, MStabZonesType.NoZones)] + [TestCase(ConversionHelper.InputZoneTypesForbiddenZones, MStabZonesType.ForbiddenZone)] + public void CanConvertToZoneType(int inputZoneType, MStabZonesType zoneType) + { + Assert.AreEqual(zoneType, ConversionHelper.ConvertToZoneType(inputZoneType)); + } - [Test] - [TestCase(LogMessageType.Error, MessageMessageType.Error)] - [TestCase(LogMessageType.Debug, MessageMessageType.Info)] - [TestCase(LogMessageType.FatalError, MessageMessageType.Error)] - [TestCase(LogMessageType.Info, MessageMessageType.Info)] - [TestCase(LogMessageType.Trace, MessageMessageType.Info)] - [TestCase(LogMessageType.Warning, MessageMessageType.Warning)] - public void CanConvertToInputMessageType(LogMessageType logMessageType, MessageMessageType messageType) - { - Assert.AreEqual(messageType, ConversionHelper.ConvertToInputMessageType(logMessageType)); - } + [Test] + [TestCase(LogMessageType.Error, MessageMessageType.Error)] + [TestCase(LogMessageType.Debug, MessageMessageType.Info)] + [TestCase(LogMessageType.FatalError, MessageMessageType.Error)] + [TestCase(LogMessageType.Info, MessageMessageType.Info)] + [TestCase(LogMessageType.Trace, MessageMessageType.Info)] + [TestCase(LogMessageType.Warning, MessageMessageType.Warning)] + public void CanConvertToInputMessageType(LogMessageType logMessageType, MessageMessageType messageType) + { + Assert.AreEqual(messageType, ConversionHelper.ConvertToInputMessageType(logMessageType)); + } - [Test] - [TestCase(MessageMessageType.Error, LogMessageType.Error)] - [TestCase(MessageMessageType.Info, LogMessageType.Info)] - [TestCase(MessageMessageType.Warning, LogMessageType.Warning)] - public void CanConvertToMessageType(MessageMessageType messageType, LogMessageType logMessageType) - { - Assert.AreEqual(logMessageType, ConversionHelper.ConvertToMessageType(messageType)); - } + [Test] + [TestCase(MessageMessageType.Error, LogMessageType.Error)] + [TestCase(MessageMessageType.Info, LogMessageType.Info)] + [TestCase(MessageMessageType.Warning, LogMessageType.Warning)] + public void CanConvertToMessageType(MessageMessageType messageType, LogMessageType logMessageType) + { + Assert.AreEqual(logMessageType, ConversionHelper.ConvertToMessageType(messageType)); + } - [Test] - [TestCase(MStabSearchMethod.Grid, ConversionHelper.InputSearchMethodGrid)] - [TestCase(MStabSearchMethod.GeneticAlgorithm, ConversionHelper.InputSearchMethodGenetic)] - [TestCase(MStabSearchMethod.BeeSwarm, ConversionHelper.InputSearchMethodBeeSwarm)] - public void CanConvertToInputSearchMethod(MStabSearchMethod searchMethod, int inputSearchMethod) - { - Assert.AreEqual(inputSearchMethod, ConversionHelper.ConvertToInputSearchMethod(searchMethod)); - } + [Test] + [TestCase(MStabSearchMethod.Grid, ConversionHelper.InputSearchMethodGrid)] + [TestCase(MStabSearchMethod.GeneticAlgorithm, ConversionHelper.InputSearchMethodGenetic)] + [TestCase(MStabSearchMethod.BeeSwarm, ConversionHelper.InputSearchMethodBeeSwarm)] + public void CanConvertToInputSearchMethod(MStabSearchMethod searchMethod, int inputSearchMethod) + { + Assert.AreEqual(inputSearchMethod, ConversionHelper.ConvertToInputSearchMethod(searchMethod)); + } - [Test] - [TestCase(ConversionHelper.InputSearchMethodGrid, MStabSearchMethod.Grid)] - [TestCase(ConversionHelper.InputSearchMethodGenetic, MStabSearchMethod.GeneticAlgorithm)] - [TestCase(ConversionHelper.InputSearchMethodBeeSwarm, MStabSearchMethod.BeeSwarm)] - public void CanConvertToSearchMethod(int inputSearchMethod, MStabSearchMethod searchMethod) - { - Assert.AreEqual(searchMethod, ConversionHelper.ConvertToSearchMethod(inputSearchMethod)); - } + [Test] + [TestCase(ConversionHelper.InputSearchMethodGrid, MStabSearchMethod.Grid)] + [TestCase(ConversionHelper.InputSearchMethodGenetic, MStabSearchMethod.GeneticAlgorithm)] + [TestCase(ConversionHelper.InputSearchMethodBeeSwarm, MStabSearchMethod.BeeSwarm)] + public void CanConvertToSearchMethod(int inputSearchMethod, MStabSearchMethod searchMethod) + { + Assert.AreEqual(searchMethod, ConversionHelper.ConvertToSearchMethod(inputSearchMethod)); + } - [Test] - [TestCase(GridSizeDetermination.Automatic, ConversionHelper.InputGridTypeAutomatic)] - [TestCase(GridSizeDetermination.Specified, ConversionHelper.InputGridTypeSpecified)] - public void CanConvertToInputGridSizeDetermination(GridSizeDetermination gridDetermination, int inputGridDetermination) - { - Assert.AreEqual(inputGridDetermination, ConversionHelper.ConvertToInputGridDetermination(gridDetermination)); - } + [Test] + [TestCase(GridSizeDetermination.Automatic, ConversionHelper.InputGridTypeAutomatic)] + [TestCase(GridSizeDetermination.Specified, ConversionHelper.InputGridTypeSpecified)] + public void CanConvertToInputGridSizeDetermination(GridSizeDetermination gridDetermination, int inputGridDetermination) + { + Assert.AreEqual(inputGridDetermination, ConversionHelper.ConvertToInputGridDetermination(gridDetermination)); + } - [Test] - [TestCase(ConversionHelper.InputGridTypeAutomatic, GridSizeDetermination.Automatic)] - [TestCase(ConversionHelper.InputGridTypeSpecified, GridSizeDetermination.Specified)] - public void CanConvertToGridSizeDetermination(int inputGridDetermination, GridSizeDetermination gridDetermination) - { - Assert.AreEqual(gridDetermination, ConversionHelper.ConvertToGridDetermination(inputGridDetermination)); - } + [Test] + [TestCase(ConversionHelper.InputGridTypeAutomatic, GridSizeDetermination.Automatic)] + [TestCase(ConversionHelper.InputGridTypeSpecified, GridSizeDetermination.Specified)] + public void CanConvertToGridSizeDetermination(int inputGridDetermination, GridSizeDetermination gridDetermination) + { + Assert.AreEqual(gridDetermination, ConversionHelper.ConvertToGridDetermination(inputGridDetermination)); + } - [Test] - [TestCase(TangentLinesDefinition.OnBoundaryLines, ConversionHelper.InputTangentLinesOnBoundatyLines)] - [TestCase(TangentLinesDefinition.Specified, ConversionHelper.InputTangentLinesSpecified)] - public void CanConvertToInputTangentLinesDefinition(TangentLinesDefinition tangentLineType, int inputTangentLineType) - { - Assert.AreEqual(inputTangentLineType, ConversionHelper.ConvertToInputTangentLinesDefinition(tangentLineType)); - } + [Test] + [TestCase(TangentLinesDefinition.OnBoundaryLines, ConversionHelper.InputTangentLinesOnBoundatyLines)] + [TestCase(TangentLinesDefinition.Specified, ConversionHelper.InputTangentLinesSpecified)] + public void CanConvertToInputTangentLinesDefinition(TangentLinesDefinition tangentLineType, int inputTangentLineType) + { + Assert.AreEqual(inputTangentLineType, ConversionHelper.ConvertToInputTangentLinesDefinition(tangentLineType)); + } - [Test] - [TestCase(ConversionHelper.InputTangentLinesOnBoundatyLines, TangentLinesDefinition.OnBoundaryLines)] - [TestCase(ConversionHelper.InputTangentLinesSpecified, TangentLinesDefinition.Specified)] - public void CanConvertToTangentLinesDefinition(int inputTangentLineType, TangentLinesDefinition tangentLineType) - { - Assert.AreEqual(tangentLineType, ConversionHelper.ConvertToTangentLinesDefinition(inputTangentLineType)); - } + [Test] + [TestCase(ConversionHelper.InputTangentLinesOnBoundatyLines, TangentLinesDefinition.OnBoundaryLines)] + [TestCase(ConversionHelper.InputTangentLinesSpecified, TangentLinesDefinition.Specified)] + public void CanConvertToTangentLinesDefinition(int inputTangentLineType, TangentLinesDefinition tangentLineType) + { + Assert.AreEqual(tangentLineType, ConversionHelper.ConvertToTangentLinesDefinition(inputTangentLineType)); + } - [Test] - [TestCase(ShearStrengthModel.None, SoilShearStrengthModel.None)] - [TestCase(ShearStrengthModel.CPhi, SoilShearStrengthModel.CPhi)] - [TestCase(ShearStrengthModel.StressTable, SoilShearStrengthModel.StressTable)] - [TestCase(ShearStrengthModel.PseudoValues, SoilShearStrengthModel.PseudoValues)] - [TestCase(ShearStrengthModel.CuMeasured, SoilShearStrengthModel.SuMeasured)] - [TestCase(ShearStrengthModel.CuCalculated, SoilShearStrengthModel.SuCalculated)] - [TestCase(ShearStrengthModel.CuGradient, SoilShearStrengthModel.SuGradient)] - [TestCase(ShearStrengthModel.CuCalculatedYield, SoilShearStrengthModel.SuCalculatedWithYield)] - [TestCase(ShearStrengthModel.CPhiOrCuCalculated, SoilShearStrengthModel.CPhiOrSuCalculated)] - public void CanConvertToSoilShearStrengthModel(ShearStrengthModel shearStrengthModel, SoilShearStrengthModel soilShearStrengthModel) - { - Assert.AreEqual(soilShearStrengthModel, ConversionHelper.ConvertToSoilShearStrengthModel(shearStrengthModel)); - } + [Test] + [TestCase(ShearStrengthModel.None, SoilShearStrengthModel.None)] + [TestCase(ShearStrengthModel.CPhi, SoilShearStrengthModel.CPhi)] + [TestCase(ShearStrengthModel.StressTable, SoilShearStrengthModel.StressTable)] + [TestCase(ShearStrengthModel.PseudoValues, SoilShearStrengthModel.PseudoValues)] + [TestCase(ShearStrengthModel.CuMeasured, SoilShearStrengthModel.SuMeasured)] + [TestCase(ShearStrengthModel.CuCalculated, SoilShearStrengthModel.SuCalculated)] + [TestCase(ShearStrengthModel.CuGradient, SoilShearStrengthModel.SuGradient)] + [TestCase(ShearStrengthModel.CuCalculatedYield, SoilShearStrengthModel.SuCalculatedWithYield)] + [TestCase(ShearStrengthModel.CPhiOrCuCalculated, SoilShearStrengthModel.CPhiOrSuCalculated)] + public void CanConvertToSoilShearStrengthModel(ShearStrengthModel shearStrengthModel, SoilShearStrengthModel soilShearStrengthModel) + { + Assert.AreEqual(soilShearStrengthModel, ConversionHelper.ConvertToSoilShearStrengthModel(shearStrengthModel)); + } - [Test] - [TestCase(SoilShearStrengthModel.None, ShearStrengthModel.None)] - [TestCase(SoilShearStrengthModel.CPhi, ShearStrengthModel.CPhi)] - [TestCase(SoilShearStrengthModel.StressTable, ShearStrengthModel.StressTable)] - [TestCase(SoilShearStrengthModel.PseudoValues, ShearStrengthModel.PseudoValues)] - [TestCase(SoilShearStrengthModel.SuMeasured, ShearStrengthModel.CuMeasured)] - [TestCase(SoilShearStrengthModel.SuCalculated, ShearStrengthModel.CuCalculated)] - [TestCase(SoilShearStrengthModel.SuGradient, ShearStrengthModel.CuGradient)] - [TestCase(SoilShearStrengthModel.SuCalculatedWithYield, ShearStrengthModel.CuCalculatedYield)] - [TestCase(SoilShearStrengthModel.CPhiOrSuCalculated, ShearStrengthModel.CPhiOrCuCalculated)] - public void CanConvertToShearStrengthModel(SoilShearStrengthModel soilShearStrengthModel, ShearStrengthModel shearStrengthModel) - { - Assert.AreEqual(shearStrengthModel, ConversionHelper.ConvertToShearStrengthModel(soilShearStrengthModel)); - } + [Test] + [TestCase(SoilShearStrengthModel.None, ShearStrengthModel.None)] + [TestCase(SoilShearStrengthModel.CPhi, ShearStrengthModel.CPhi)] + [TestCase(SoilShearStrengthModel.StressTable, ShearStrengthModel.StressTable)] + [TestCase(SoilShearStrengthModel.PseudoValues, ShearStrengthModel.PseudoValues)] + [TestCase(SoilShearStrengthModel.SuMeasured, ShearStrengthModel.CuMeasured)] + [TestCase(SoilShearStrengthModel.SuCalculated, ShearStrengthModel.CuCalculated)] + [TestCase(SoilShearStrengthModel.SuGradient, ShearStrengthModel.CuGradient)] + [TestCase(SoilShearStrengthModel.SuCalculatedWithYield, ShearStrengthModel.CuCalculatedYield)] + [TestCase(SoilShearStrengthModel.CPhiOrSuCalculated, ShearStrengthModel.CPhiOrCuCalculated)] + public void CanConvertToShearStrengthModel(SoilShearStrengthModel soilShearStrengthModel, ShearStrengthModel shearStrengthModel) + { + Assert.AreEqual(shearStrengthModel, ConversionHelper.ConvertToShearStrengthModel(soilShearStrengthModel)); + } - [Test] - [TestCase(DilatancyType.Zero, SoilDilatancyType.Zero)] - [TestCase(DilatancyType.Phi, SoilDilatancyType.Phi)] - [TestCase(DilatancyType.MinusPhi, SoilDilatancyType.MinusPhi)] - public void CanConvertToSoilDilatancyType(DilatancyType dilatancyType, SoilDilatancyType soilDilatancyType) - { - Assert.AreEqual(soilDilatancyType, ConversionHelper.ConvertToSoilDilatancyType(dilatancyType)); - } + [Test] + [TestCase(DilatancyType.Zero, SoilDilatancyType.Zero)] + [TestCase(DilatancyType.Phi, SoilDilatancyType.Phi)] + [TestCase(DilatancyType.MinusPhi, SoilDilatancyType.MinusPhi)] + public void CanConvertToSoilDilatancyType(DilatancyType dilatancyType, SoilDilatancyType soilDilatancyType) + { + Assert.AreEqual(soilDilatancyType, ConversionHelper.ConvertToSoilDilatancyType(dilatancyType)); + } - [Test] - [TestCase(SoilDilatancyType.Zero, DilatancyType.Zero)] - [TestCase(SoilDilatancyType.Phi, DilatancyType.Phi)] - [TestCase(SoilDilatancyType.MinusPhi, DilatancyType.MinusPhi)] - public void CanConvertToDilatancyType(SoilDilatancyType soilDilatancyType, DilatancyType dilatancyType) - { - Assert.AreEqual(dilatancyType, ConversionHelper.ConvertToDilatancyType(soilDilatancyType)); - } + [Test] + [TestCase(SoilDilatancyType.Zero, DilatancyType.Zero)] + [TestCase(SoilDilatancyType.Phi, DilatancyType.Phi)] + [TestCase(SoilDilatancyType.MinusPhi, DilatancyType.MinusPhi)] + public void CanConvertToDilatancyType(SoilDilatancyType soilDilatancyType, DilatancyType dilatancyType) + { + Assert.AreEqual(dilatancyType, ConversionHelper.ConvertToDilatancyType(soilDilatancyType)); + } - [Test] - [TestCase(LocationDesignOptionsStabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption, StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)] - [TestCase(LocationDesignOptionsStabilityDesignMethod.OptimizedSlopeAndShoulderAdaption, StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)] - public void CanConvertToInputStabilityDesignMethod(LocationDesignOptionsStabilityDesignMethod inputStabilityDesignMethod, StabilityDesignMethod stabilityDesignMethod) - { - Assert.AreEqual(stabilityDesignMethod, ConversionHelper.ConvertToDamStabilityDesignMethod(inputStabilityDesignMethod)); - } + [Test] + [TestCase(LocationDesignOptionsStabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption, StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)] + [TestCase(LocationDesignOptionsStabilityDesignMethod.OptimizedSlopeAndShoulderAdaption, StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)] + public void CanConvertToInputStabilityDesignMethod(LocationDesignOptionsStabilityDesignMethod inputStabilityDesignMethod, StabilityDesignMethod stabilityDesignMethod) + { + Assert.AreEqual(stabilityDesignMethod, ConversionHelper.ConvertToDamStabilityDesignMethod(inputStabilityDesignMethod)); + } - [Test] - [TestCase(StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption, LocationDesignOptionsStabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)] - [TestCase(StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption, LocationDesignOptionsStabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)] - public void CanConvertToDamStabilityDesignMethod(StabilityDesignMethod stabilityDesignMethod, LocationDesignOptionsStabilityDesignMethod inputStabilityDesignMethod) - { - Assert.AreEqual(inputStabilityDesignMethod, ConversionHelper.ConvertToInputStabilityDesignMethod(stabilityDesignMethod)); - } + [Test] + [TestCase(StabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption, LocationDesignOptionsStabilityDesignMethod.SlopeAdaptionBeforeShoulderAdaption)] + [TestCase(StabilityDesignMethod.OptimizedSlopeAndShoulderAdaption, LocationDesignOptionsStabilityDesignMethod.OptimizedSlopeAndShoulderAdaption)] + public void CanConvertToDamStabilityDesignMethod(StabilityDesignMethod stabilityDesignMethod, LocationDesignOptionsStabilityDesignMethod inputStabilityDesignMethod) + { + Assert.AreEqual(inputStabilityDesignMethod, ConversionHelper.ConvertToInputStabilityDesignMethod(stabilityDesignMethod)); + } - [Test] - [TestCase(LoadSituation.Dry, ConversionHelper.LoadSituationDry)] - [TestCase(LoadSituation.Wet, ConversionHelper.LoadSituationWet)] - public void CanConvertToOutputLoadSituation(LoadSituation loadSituation, int outputLoadSituation) - { - Assert.AreEqual(outputLoadSituation, ConversionHelper.ConvertToOutputLoadSituation(loadSituation)); - } + [Test] + [TestCase(LoadSituation.Dry, ConversionHelper.LoadSituationDry)] + [TestCase(LoadSituation.Wet, ConversionHelper.LoadSituationWet)] + public void CanConvertToOutputLoadSituation(LoadSituation loadSituation, int outputLoadSituation) + { + Assert.AreEqual(outputLoadSituation, ConversionHelper.ConvertToOutputLoadSituation(loadSituation)); + } - [Test] - [TestCase(ConversionHelper.LoadSituationDry, LoadSituation.Dry)] - [TestCase(ConversionHelper.LoadSituationWet, LoadSituation.Wet)] - public void CanConvertToLoadSituation(int outputLoadSituation, LoadSituation loadSituation) - { - Assert.AreEqual(loadSituation, ConversionHelper.ConvertToLoadSituation(outputLoadSituation)); - } + [Test] + [TestCase(ConversionHelper.LoadSituationDry, LoadSituation.Dry)] + [TestCase(ConversionHelper.LoadSituationWet, LoadSituation.Wet)] + public void CanConvertToLoadSituation(int outputLoadSituation, LoadSituation loadSituation) + { + Assert.AreEqual(loadSituation, ConversionHelper.ConvertToLoadSituation(outputLoadSituation)); + } - [Test] - [TestCase(UpliftType.Uplift, ConversionHelper.UpliftTypeUplift)] - [TestCase(UpliftType.NoUplift, ConversionHelper.UpliftTypeNoUplift)] - public void CanConvertToOutputUpliftType(UpliftType upliftType, int outputUpliftType) - { - Assert.AreEqual(outputUpliftType, ConversionHelper.ConvertToOutputUpliftType(upliftType)); - } + [Test] + [TestCase(UpliftType.Uplift, ConversionHelper.UpliftTypeUplift)] + [TestCase(UpliftType.NoUplift, ConversionHelper.UpliftTypeNoUplift)] + public void CanConvertToOutputUpliftType(UpliftType upliftType, int outputUpliftType) + { + Assert.AreEqual(outputUpliftType, ConversionHelper.ConvertToOutputUpliftType(upliftType)); + } - [Test] - [TestCase(ConversionHelper.UpliftTypeUplift, UpliftType.Uplift)] - [TestCase(ConversionHelper.UpliftTypeNoUplift, UpliftType.NoUplift)] - public void CanConvertToUpliftType(int outputUpliftType, UpliftType upliftType) - { - Assert.AreEqual(upliftType, ConversionHelper.ConvertToUpliftType(outputUpliftType)); - } + [Test] + [TestCase(ConversionHelper.UpliftTypeUplift, UpliftType.Uplift)] + [TestCase(ConversionHelper.UpliftTypeNoUplift, UpliftType.NoUplift)] + public void CanConvertToUpliftType(int outputUpliftType, UpliftType upliftType) + { + Assert.AreEqual(upliftType, ConversionHelper.ConvertToUpliftType(outputUpliftType)); + } - [Test] - [TestCase(MStabModelType.Bishop, ConversionHelper.MStabModelTypeBishop)] - [TestCase(MStabModelType.Spencer, ConversionHelper.MStabModelTypeSpencer)] - [TestCase(MStabModelType.Fellenius, ConversionHelper.MStabModelTypeFellenius)] - [TestCase(MStabModelType.UpliftVan, ConversionHelper.MStabModelTypeUpliftVan)] - [TestCase(MStabModelType.UpliftSpencer, ConversionHelper.MStabModelTypeUpliftSpencer)] - [TestCase(MStabModelType.BishopRandomField, ConversionHelper.MStabModelTypeBishopRandomField)] - [TestCase(MStabModelType.BishopUpliftVan, ConversionHelper.MStabModelTypeBishopUpliftVan)] - public void CanConvertToOutputMStabModelType(MStabModelType mStabModelType, int outputMStabModelType) - { - Assert.AreEqual(outputMStabModelType, ConversionHelper.ConvertToOutputMStabModelType(mStabModelType)); - } + [Test] + [TestCase(MStabModelType.Bishop, ConversionHelper.MStabModelTypeBishop)] + [TestCase(MStabModelType.Spencer, ConversionHelper.MStabModelTypeSpencer)] + [TestCase(MStabModelType.Fellenius, ConversionHelper.MStabModelTypeFellenius)] + [TestCase(MStabModelType.UpliftVan, ConversionHelper.MStabModelTypeUpliftVan)] + [TestCase(MStabModelType.UpliftSpencer, ConversionHelper.MStabModelTypeUpliftSpencer)] + [TestCase(MStabModelType.BishopRandomField, ConversionHelper.MStabModelTypeBishopRandomField)] + [TestCase(MStabModelType.BishopUpliftVan, ConversionHelper.MStabModelTypeBishopUpliftVan)] + public void CanConvertToOutputMStabModelType(MStabModelType mStabModelType, int outputMStabModelType) + { + Assert.AreEqual(outputMStabModelType, ConversionHelper.ConvertToOutputMStabModelType(mStabModelType)); + } - [Test] - [TestCase(ConversionHelper.MStabModelTypeBishop, MStabModelType.Bishop)] - [TestCase(ConversionHelper.MStabModelTypeSpencer, MStabModelType.Spencer)] - [TestCase(ConversionHelper.MStabModelTypeFellenius, MStabModelType.Fellenius)] - [TestCase(ConversionHelper.MStabModelTypeUpliftVan, MStabModelType.UpliftVan)] - [TestCase(ConversionHelper.MStabModelTypeUpliftSpencer, MStabModelType.UpliftSpencer)] - [TestCase(ConversionHelper.MStabModelTypeBishopRandomField, MStabModelType.BishopRandomField)] - [TestCase(ConversionHelper.MStabModelTypeBishopUpliftVan, MStabModelType.BishopUpliftVan)] - public void CanConvertToMStabModelType(int outputMStabModelType, MStabModelType mStabModelType) - { - Assert.AreEqual(mStabModelType, ConversionHelper.ConvertToMStabModelType(outputMStabModelType)); - } + [Test] + [TestCase(ConversionHelper.MStabModelTypeBishop, MStabModelType.Bishop)] + [TestCase(ConversionHelper.MStabModelTypeSpencer, MStabModelType.Spencer)] + [TestCase(ConversionHelper.MStabModelTypeFellenius, MStabModelType.Fellenius)] + [TestCase(ConversionHelper.MStabModelTypeUpliftVan, MStabModelType.UpliftVan)] + [TestCase(ConversionHelper.MStabModelTypeUpliftSpencer, MStabModelType.UpliftSpencer)] + [TestCase(ConversionHelper.MStabModelTypeBishopRandomField, MStabModelType.BishopRandomField)] + [TestCase(ConversionHelper.MStabModelTypeBishopUpliftVan, MStabModelType.BishopUpliftVan)] + public void CanConvertToMStabModelType(int outputMStabModelType, MStabModelType mStabModelType) + { + Assert.AreEqual(mStabModelType, ConversionHelper.ConvertToMStabModelType(outputMStabModelType)); + } - [Test] - [TestCase(PipingModelType.Bligh, ConversionHelper.PipingModelTypeBligh)] - [TestCase(PipingModelType.Sellmeijer, ConversionHelper.PipingModelTypeSellmeijer)] - [TestCase(PipingModelType.Sellmeijer4Forces, ConversionHelper.PipingModelTypeSellmeijer4Forces)] - [TestCase(PipingModelType.Wti2017, ConversionHelper.PipingModelTypeWti2017)] - public void CanConvertToOutputPipingModelType(PipingModelType pipingModelType, int outputPipingModelType) - { - Assert.AreEqual(outputPipingModelType, ConversionHelper.ConvertToOutputPipingModelType(pipingModelType)); - } + [Test] + [TestCase(PipingModelType.Bligh, ConversionHelper.PipingModelTypeBligh)] + [TestCase(PipingModelType.Sellmeijer, ConversionHelper.PipingModelTypeSellmeijer)] + [TestCase(PipingModelType.Sellmeijer4Forces, ConversionHelper.PipingModelTypeSellmeijer4Forces)] + [TestCase(PipingModelType.Wti2017, ConversionHelper.PipingModelTypeWti2017)] + public void CanConvertToOutputPipingModelType(PipingModelType pipingModelType, int outputPipingModelType) + { + Assert.AreEqual(outputPipingModelType, ConversionHelper.ConvertToOutputPipingModelType(pipingModelType)); + } - [Test] - [TestCase(ConversionHelper.PipingModelTypeBligh, PipingModelType.Bligh)] - [TestCase(ConversionHelper.PipingModelTypeSellmeijer, PipingModelType.Sellmeijer)] - [TestCase(ConversionHelper.PipingModelTypeSellmeijer4Forces, PipingModelType.Sellmeijer4Forces)] - [TestCase(ConversionHelper.PipingModelTypeWti2017, PipingModelType.Wti2017)] - public void CanConvertToPipingModelType(int outputPipingModelType, PipingModelType pipingModelType) - { - Assert.AreEqual(pipingModelType, ConversionHelper.ConvertToPipingModelType(outputPipingModelType)); - } + [Test] + [TestCase(ConversionHelper.PipingModelTypeBligh, PipingModelType.Bligh)] + [TestCase(ConversionHelper.PipingModelTypeSellmeijer, PipingModelType.Sellmeijer)] + [TestCase(ConversionHelper.PipingModelTypeSellmeijer4Forces, PipingModelType.Sellmeijer4Forces)] + [TestCase(ConversionHelper.PipingModelTypeWti2017, PipingModelType.Wti2017)] + public void CanConvertToPipingModelType(int outputPipingModelType, PipingModelType pipingModelType) + { + Assert.AreEqual(pipingModelType, ConversionHelper.ConvertToPipingModelType(outputPipingModelType)); + } - [Test] - [TestCase(DesignResultStabilityDesignResultsStabilityModelType.Bishop, MStabModelType.Bishop)] - [TestCase(DesignResultStabilityDesignResultsStabilityModelType.UpliftVan, MStabModelType.UpliftVan)] - [TestCase(DesignResultStabilityDesignResultsStabilityModelType.BishopUpliftVan, MStabModelType.BishopUpliftVan)] - public void CanConvertToOutputStabilityModelType(DesignResultStabilityDesignResultsStabilityModelType outputStabilityModelType, - MStabModelType stabilityModelType) - { - Assert.AreEqual(outputStabilityModelType, ConversionHelper.ConvertToOutputStabilityModelType(stabilityModelType)); - } + [Test] + [TestCase(DesignResultStabilityDesignResultsStabilityModelType.Bishop, MStabModelType.Bishop)] + [TestCase(DesignResultStabilityDesignResultsStabilityModelType.UpliftVan, MStabModelType.UpliftVan)] + [TestCase(DesignResultStabilityDesignResultsStabilityModelType.BishopUpliftVan, MStabModelType.BishopUpliftVan)] + public void CanConvertToOutputStabilityModelType(DesignResultStabilityDesignResultsStabilityModelType outputStabilityModelType, + MStabModelType stabilityModelType) + { + Assert.AreEqual(outputStabilityModelType, ConversionHelper.ConvertToOutputStabilityModelType(stabilityModelType)); + } - [Test] - [TestCase(MStabModelType.Bishop, DesignResultStabilityDesignResultsStabilityModelType.Bishop)] - [TestCase(MStabModelType.UpliftVan, DesignResultStabilityDesignResultsStabilityModelType.UpliftVan)] - [TestCase(MStabModelType.BishopUpliftVan, DesignResultStabilityDesignResultsStabilityModelType.BishopUpliftVan)] - public void CanConvertToStabilityModelType(MStabModelType stabilityModelType, - DesignResultStabilityDesignResultsStabilityModelType outputStabilityModelType) - { - Assert.AreEqual(stabilityModelType, ConversionHelper.ConvertToStabilityModelType(outputStabilityModelType)); - } + [Test] + [TestCase(MStabModelType.Bishop, DesignResultStabilityDesignResultsStabilityModelType.Bishop)] + [TestCase(MStabModelType.UpliftVan, DesignResultStabilityDesignResultsStabilityModelType.UpliftVan)] + [TestCase(MStabModelType.BishopUpliftVan, DesignResultStabilityDesignResultsStabilityModelType.BishopUpliftVan)] + public void CanConvertToStabilityModelType(MStabModelType stabilityModelType, + DesignResultStabilityDesignResultsStabilityModelType outputStabilityModelType) + { + Assert.AreEqual(stabilityModelType, ConversionHelper.ConvertToStabilityModelType(outputStabilityModelType)); + } - [Test] - [TestCase(ConversionHelper.TimeStepUnitSecond, TimeStepUnit.Second)] - [TestCase(ConversionHelper.TimeStepUnitMinute, TimeStepUnit.Minute)] - [TestCase(ConversionHelper.TimeStepUnitHour, TimeStepUnit.Hour)] - [TestCase(ConversionHelper.TimeStepUnitDay, TimeStepUnit.Day)] - [TestCase(ConversionHelper.TimeStepUnitMonth, TimeStepUnit.Month)] - [TestCase(ConversionHelper.TimeStepUnitWeek, TimeStepUnit.Week)] - [TestCase(ConversionHelper.TimeStepUnitYear, TimeStepUnit.Year)] - [TestCase(ConversionHelper.TimeStepUnitNonequidistant, TimeStepUnit.Nonequidistant)] - public void CanConvertToTimeStepUnit(uint inputTimeStepUnit, TimeStepUnit timeStepUnit) - { - Assert.AreEqual(timeStepUnit, ConversionHelper.ConvertToTimeStepUnit(inputTimeStepUnit)); - } + [Test] + [TestCase(ConversionHelper.TimeStepUnitSecond, TimeStepUnit.Second)] + [TestCase(ConversionHelper.TimeStepUnitMinute, TimeStepUnit.Minute)] + [TestCase(ConversionHelper.TimeStepUnitHour, TimeStepUnit.Hour)] + [TestCase(ConversionHelper.TimeStepUnitDay, TimeStepUnit.Day)] + [TestCase(ConversionHelper.TimeStepUnitMonth, TimeStepUnit.Month)] + [TestCase(ConversionHelper.TimeStepUnitWeek, TimeStepUnit.Week)] + [TestCase(ConversionHelper.TimeStepUnitYear, TimeStepUnit.Year)] + [TestCase(ConversionHelper.TimeStepUnitNonequidistant, TimeStepUnit.Nonequidistant)] + public void CanConvertToTimeStepUnit(uint inputTimeStepUnit, TimeStepUnit timeStepUnit) + { + Assert.AreEqual(timeStepUnit, ConversionHelper.ConvertToTimeStepUnit(inputTimeStepUnit)); + } - [Test] - [TestCase(TimeStepUnit.Second, ConversionHelper.TimeStepUnitSecond)] - [TestCase(TimeStepUnit.Minute, ConversionHelper.TimeStepUnitMinute)] - [TestCase(TimeStepUnit.Hour, ConversionHelper.TimeStepUnitHour)] - [TestCase(TimeStepUnit.Day, ConversionHelper.TimeStepUnitDay)] - [TestCase(TimeStepUnit.Month, ConversionHelper.TimeStepUnitMonth)] - [TestCase(TimeStepUnit.Week, ConversionHelper.TimeStepUnitWeek)] - [TestCase(TimeStepUnit.Year, ConversionHelper.TimeStepUnitYear)] - [TestCase(TimeStepUnit.Nonequidistant, ConversionHelper.TimeStepUnitNonequidistant)] - public void CanConvertToInputTimeStepUnit(TimeStepUnit timeStepUnit, uint inputTimeStepUnit) - { - Assert.AreEqual(inputTimeStepUnit, ConversionHelper.ConvertToInputTimeStepUnit(timeStepUnit)); - } + [Test] + [TestCase(TimeStepUnit.Second, ConversionHelper.TimeStepUnitSecond)] + [TestCase(TimeStepUnit.Minute, ConversionHelper.TimeStepUnitMinute)] + [TestCase(TimeStepUnit.Hour, ConversionHelper.TimeStepUnitHour)] + [TestCase(TimeStepUnit.Day, ConversionHelper.TimeStepUnitDay)] + [TestCase(TimeStepUnit.Month, ConversionHelper.TimeStepUnitMonth)] + [TestCase(TimeStepUnit.Week, ConversionHelper.TimeStepUnitWeek)] + [TestCase(TimeStepUnit.Year, ConversionHelper.TimeStepUnitYear)] + [TestCase(TimeStepUnit.Nonequidistant, ConversionHelper.TimeStepUnitNonequidistant)] + public void CanConvertToInputTimeStepUnit(TimeStepUnit timeStepUnit, uint inputTimeStepUnit) + { + Assert.AreEqual(inputTimeStepUnit, ConversionHelper.ConvertToInputTimeStepUnit(timeStepUnit)); + } - [TestCase(ConversionHelper.InputSegmentFailureMechanismAll)] - public void CannotConvertToSegmentFailureMechanismType(int inputFailureMechanismSystemType) - { - Assert.That(() => ConversionHelper.ConvertToSegmentFailureMechanismType(inputFailureMechanismSystemType), Throws.InstanceOf().With.Message.EqualTo("Couldn't convert '0' to type FailureMechanismSystemType")); - } + [TestCase(ConversionHelper.InputSegmentFailureMechanismAll)] + public void CannotConvertToSegmentFailureMechanismType(int inputFailureMechanismSystemType) + { + Assert.That(() => ConversionHelper.ConvertToSegmentFailureMechanismType(inputFailureMechanismSystemType), Throws.InstanceOf().With.Message.EqualTo("Couldn't convert '0' to type FailureMechanismSystemType")); + } - [TestCase(ConversionHelper.PlLineTypePl1, PLLineType.PL1)] - [TestCase(ConversionHelper.PlLineTypePl2, PLLineType.PL2)] - [TestCase(ConversionHelper.PlLineTypePl3, PLLineType.PL3)] - [TestCase(ConversionHelper.PlLineTypePl4, PLLineType.PL4)] - public void CanConvertToPlLineType(uint inputPlLineType, PLLineType plLineType) - { - Assert.AreEqual(plLineType, ConversionHelper.ConvertToPlLineType(inputPlLineType)); - } + [TestCase(ConversionHelper.PlLineTypePl1, PLLineType.PL1)] + [TestCase(ConversionHelper.PlLineTypePl2, PLLineType.PL2)] + [TestCase(ConversionHelper.PlLineTypePl3, PLLineType.PL3)] + [TestCase(ConversionHelper.PlLineTypePl4, PLLineType.PL4)] + public void CanConvertToPlLineType(uint inputPlLineType, PLLineType plLineType) + { + Assert.AreEqual(plLineType, ConversionHelper.ConvertToPlLineType(inputPlLineType)); + } - [TestCase(PLLineType.PL1, ConversionHelper.PlLineTypePl1)] - [TestCase(PLLineType.PL2, ConversionHelper.PlLineTypePl2)] - [TestCase(PLLineType.PL3, ConversionHelper.PlLineTypePl3)] - [TestCase(PLLineType.PL4, ConversionHelper.PlLineTypePl4)] - public void CanConvertToInputPlLineType(PLLineType plLineType, uint inputPlLineType) - { - Assert.AreEqual(inputPlLineType, ConversionHelper.ConvertToInputPlLineType(plLineType)); - } + [TestCase(PLLineType.PL1, ConversionHelper.PlLineTypePl1)] + [TestCase(PLLineType.PL2, ConversionHelper.PlLineTypePl2)] + [TestCase(PLLineType.PL3, ConversionHelper.PlLineTypePl3)] + [TestCase(PLLineType.PL4, ConversionHelper.PlLineTypePl4)] + public void CanConvertToInputPlLineType(PLLineType plLineType, uint inputPlLineType) + { + Assert.AreEqual(inputPlLineType, ConversionHelper.ConvertToInputPlLineType(plLineType)); + } - [TestCase(ConversionHelper.SensorTypePiezometricHead, SensorType.PiezometricHead)] - [TestCase(ConversionHelper.SensorTypeWaterLevel, SensorType.WaterLevel)] - [TestCase(ConversionHelper.SensorTypePolderLevel, SensorType.PolderLevel)] - public void CanConvertToSensorType(uint inputSensorType, SensorType sensorType) - { - Assert.AreEqual(sensorType, ConversionHelper.ConvertToSensorType(inputSensorType)); - } + [TestCase(ConversionHelper.SensorTypePiezometricHead, SensorType.PiezometricHead)] + [TestCase(ConversionHelper.SensorTypeWaterLevel, SensorType.WaterLevel)] + [TestCase(ConversionHelper.SensorTypePolderLevel, SensorType.PolderLevel)] + public void CanConvertToSensorType(uint inputSensorType, SensorType sensorType) + { + Assert.AreEqual(sensorType, ConversionHelper.ConvertToSensorType(inputSensorType)); + } - [TestCase(SensorType.PiezometricHead, ConversionHelper.SensorTypePiezometricHead)] - [TestCase(SensorType.WaterLevel, ConversionHelper.SensorTypeWaterLevel)] - [TestCase(SensorType.PolderLevel, ConversionHelper.SensorTypePolderLevel)] - public void CanConvertToInputSensorType(SensorType sensorType, uint inputSensorType) - { - Assert.AreEqual(inputSensorType, ConversionHelper.ConvertToInputSensorType(sensorType)); - } + [TestCase(SensorType.PiezometricHead, ConversionHelper.SensorTypePiezometricHead)] + [TestCase(SensorType.WaterLevel, ConversionHelper.SensorTypeWaterLevel)] + [TestCase(SensorType.PolderLevel, ConversionHelper.SensorTypePolderLevel)] + public void CanConvertToInputSensorType(SensorType sensorType, uint inputSensorType) + { + Assert.AreEqual(inputSensorType, ConversionHelper.ConvertToInputSensorType(sensorType)); + } - [TestCase(ConversionHelper.DataSourceTypeSensorsIgnore, DataSourceTypeSensors.Ignore)] - [TestCase(ConversionHelper.DataSourceTypeSensorsLocationData, DataSourceTypeSensors.LocationData)] - [TestCase(ConversionHelper.DataSourceTypeSensorsSensor, DataSourceTypeSensors.Sensor)] - public void CanConvertToSensorType(uint inputdataSourceTypeSensors, DataSourceTypeSensors dataSourceTypeSensors) - { - Assert.AreEqual(dataSourceTypeSensors, ConversionHelper.ConvertToDataSourceTypeSensors(inputdataSourceTypeSensors)); - } + [TestCase(ConversionHelper.DataSourceTypeSensorsIgnore, DataSourceTypeSensors.Ignore)] + [TestCase(ConversionHelper.DataSourceTypeSensorsLocationData, DataSourceTypeSensors.LocationData)] + [TestCase(ConversionHelper.DataSourceTypeSensorsSensor, DataSourceTypeSensors.Sensor)] + public void CanConvertToSensorType(uint inputdataSourceTypeSensors, DataSourceTypeSensors dataSourceTypeSensors) + { + Assert.AreEqual(dataSourceTypeSensors, ConversionHelper.ConvertToDataSourceTypeSensors(inputdataSourceTypeSensors)); + } - [TestCase(DataSourceTypeSensors.Ignore, ConversionHelper.DataSourceTypeSensorsIgnore)] - [TestCase(DataSourceTypeSensors.LocationData, ConversionHelper.DataSourceTypeSensorsLocationData)] - [TestCase(DataSourceTypeSensors.Sensor, ConversionHelper.DataSourceTypeSensorsSensor)] - public void CanConvertToInputSensorType(DataSourceTypeSensors dataSourceTypeSensors, uint inputdataSourceTypeSensors) - { - Assert.AreEqual(inputdataSourceTypeSensors, ConversionHelper.ConvertToInputDataSourceTypeSensors(dataSourceTypeSensors)); - } + [TestCase(DataSourceTypeSensors.Ignore, ConversionHelper.DataSourceTypeSensorsIgnore)] + [TestCase(DataSourceTypeSensors.LocationData, ConversionHelper.DataSourceTypeSensorsLocationData)] + [TestCase(DataSourceTypeSensors.Sensor, ConversionHelper.DataSourceTypeSensorsSensor)] + public void CanConvertToInputSensorType(DataSourceTypeSensors dataSourceTypeSensors, uint inputdataSourceTypeSensors) + { + Assert.AreEqual(inputdataSourceTypeSensors, ConversionHelper.ConvertToInputDataSourceTypeSensors(dataSourceTypeSensors)); } + + [TestCase("Sand", SoilType.Sand)] + [TestCase("Peat", SoilType.Peat)] + [TestCase("Loam", SoilType.Loam)] + [TestCase("Clay", SoilType.Clay)] + [TestCase("Gravel", SoilType.Gravel)] + public void CanConvertToSoilType(string inputSoilType, SoilType expectedSoilType) + { + Assert.That(ConversionHelper.ConvertToSoilType(inputSoilType), Is.EqualTo(expectedSoilType)); + } + + [TestCase("None", ShearStrengthModel.None)] + [TestCase("C phi", ShearStrengthModel.CPhi)] + [TestCase("Stress table", ShearStrengthModel.StressTable)] + [TestCase("Pseudo values", ShearStrengthModel.PseudoValues)] + [TestCase("Su measured", ShearStrengthModel.CuMeasured)] + [TestCase("Su calculated", ShearStrengthModel.CuCalculated)] + [TestCase("Su gradient", ShearStrengthModel.CuGradient)] + [TestCase("Su calculated with yield", ShearStrengthModel.CuCalculatedYield)] + [TestCase("C phi or Su calculated", ShearStrengthModel.CPhiOrCuCalculated)] + public void CanConvertToShearStrengthModel(string inputSoilType, ShearStrengthModel expectedSoilType) + { + Assert.That(ConversionHelper.ConvertToShearStrengthModel(inputSoilType), Is.EqualTo(expectedSoilType)); + } } \ No newline at end of file Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporter.cs =================================================================== diff -u -r4070 -r4143 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporter.cs (.../CsvImporter.cs) (revision 4070) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporter.cs (.../CsvImporter.cs) (revision 4143) @@ -29,33 +29,36 @@ public class CsvImporter { - private const string FileExtension = "csv"; - private const string FilePattern = "{0}\\{1}." + FileExtension; + private const string fileExtension = "csv"; + private const string filePattern = "{0}\\{1}." + fileExtension; - private readonly string locationsFileNamePart = "locations"; - private readonly string segmentsFileNamePart = "segments"; - private readonly string soilProfilesFileNamePart = "soilprofiles"; - private readonly string surfaceLinesFileNamePart = "surfacelines"; - private readonly string characteristicPointFileNamePart = "characteristicpoints"; - private readonly string ScenariosFileNamePart = "scenarios"; + private const string locationsFileNamePart = "locations"; + private const string segmentsFileNamePart = "segments"; + private const string soilProfilesFileNamePart = "soilprofiles"; + private const string surfaceLinesFileNamePart = "surfacelines"; + private const string characteristicPointFileNamePart = "characteristicpoints"; + private const string scenariosFileNamePart = "scenarios"; + private const string soilsFileNamePart = "soils"; private string folderName; - public List ErrorMessages { get; set; } = new List(); + public List ErrorMessages { get; } = new(); - public List LocationRecords { get; set; } = new List(); + public List LocationRecords { get; set; } = new(); - public List SegmentRecords { get; private set; } = new List(); + public List SegmentRecords { get; private set; } = new(); - public List CharacteristicPointsRecords { get; private set; } = new List(); + public List CharacteristicPointsRecords { get; private set; } = new(); - public List SoilProfilesRecords { get; private set; } = new List(); + public List SoilProfilesRecords { get; private set; } = new(); - public List SurfaceLinesRecords { get; private set; } = new List(); + public List SurfaceLinesRecords { get; private set; } = new(); - public List ScenariosRecords { get; private set; } = new List(); + public List ScenariosRecords { get; private set; } = new(); + public List SoilsRecords { get; private set; } = new(); + /// - /// Imports the CSV data from directory. + /// Imports the CSV data from directory. /// /// The CSV dir. /// if set to true [is import only locations]. @@ -65,65 +68,42 @@ ProgressDelegate progress, DamProjectType damProjectType) { folderName = csvDir; - if (progress != null) - { - progress(0.03); - } + progress?.Invoke(0.03); ImportLocations(LocationsFileName); if (!isImportOnlyLocations) { - if (progress != null) - { - progress(0.08); - } + progress?.Invoke(0.08); ImportSegments(SegmentsFileName); - if (progress != null) - { - progress(0.12); - } + progress?.Invoke(0.12); ImportCharacteristicPoints(CharacteristicPointsFileName); - if (progress != null) - { - progress(0.16); - } + progress?.Invoke(0.16); ImportSoilProfiles(SoilProfilesFileName); - if (progress != null) - { - progress(0.2); - } + progress?.Invoke(0.2); ImportSurfaceLines(SurfaceLinesFileName); // Scenario file is required for design projects and optional for the rest if (damProjectType == DamProjectType.Design) { - if (progress != null) - { - progress(0.25); - } + progress?.Invoke(0.25); ImportScenarios(ScenariosFileName); } else { if (File.Exists(ScenariosFileName)) { - if (progress != null) - { - progress(0.25); - } + progress?.Invoke(0.25); ImportScenarios(ScenariosFileName); } } - if (progress != null) - { - progress(0.30); - } + ImportSoils(SoilsFileName); + progress?.Invoke(0.30); } } @@ -132,64 +112,24 @@ return "CsvImporter"; } - private string ImportFolderLocation - { - get - { - return folderName != null && folderName.EndsWith("\\") ? folderName.Substring(0, folderName.Length - 1) : folderName; - } - } + private string ImportFolderLocation => (folderName != null) && folderName.EndsWith("\\") ? folderName.Substring(0, folderName.Length - 1) : folderName; - private string LocationsFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, locationsFileNamePart); - } - } + private string LocationsFileName => string.Format(filePattern, ImportFolderLocation, locationsFileNamePart); - private string SegmentsFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, segmentsFileNamePart); - } - } + private string SegmentsFileName => string.Format(filePattern, ImportFolderLocation, segmentsFileNamePart); - private string SoilProfilesFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, soilProfilesFileNamePart); - } - } + private string SoilProfilesFileName => string.Format(filePattern, ImportFolderLocation, soilProfilesFileNamePart); - private string SurfaceLinesFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, surfaceLinesFileNamePart); - } - } + private string SurfaceLinesFileName => string.Format(filePattern, ImportFolderLocation, surfaceLinesFileNamePart); - private string CharacteristicPointsFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, characteristicPointFileNamePart); - } - } + private string CharacteristicPointsFileName => string.Format(filePattern, ImportFolderLocation, characteristicPointFileNamePart); - private string ScenariosFileName - { - get - { - return string.Format(FilePattern, ImportFolderLocation, ScenariosFileNamePart); - } - } + private string ScenariosFileName => string.Format(filePattern, ImportFolderLocation, scenariosFileNamePart); + private string SoilsFileName => string.Format(filePattern, ImportFolderLocation, soilsFileNamePart); + /// - /// Imports the locations. + /// Imports the locations. /// /// Name of the file. private void ImportLocations(string fileName) @@ -203,20 +143,20 @@ LocationRecords = csvImporterLocations.ImportedItems; foreach (string errorMessage in csvImporterLocations.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterSegmentsException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } } /// - /// Imports the segments. + /// Imports the segments. /// /// Name of the file. private void ImportSegments(string fileName) @@ -227,19 +167,19 @@ SegmentRecords = csvImporterSegments.ImportedItems; foreach (string errorMessage in csvImporterSegments.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterSegmentsException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } /// - /// Imports the characteristic points. + /// Imports the characteristic points. /// /// Name of the file. private void ImportCharacteristicPoints(string fileName) @@ -250,19 +190,19 @@ CharacteristicPointsRecords = csvImporterCharacteristicPoints.ImportedItems; foreach (string errorMessage in csvImporterCharacteristicPoints.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterCharacteristicPointsException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } /// - /// Imports the soil profiles. + /// Imports the soil profiles. /// /// Name of the file. private void ImportSoilProfiles(string fileName) @@ -276,20 +216,20 @@ SoilProfilesRecords = csvImporterSoilProfiles.ImportedItems; foreach (string errorMessage in csvImporterSoilProfiles.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterSoilProfilesException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } } /// - /// Imports the surface lines. + /// Imports the surface lines. /// /// Name of the file. private void ImportSurfaceLines(string fileName) @@ -300,19 +240,19 @@ SurfaceLinesRecords = csvImporterSurfaceLines.ImportedItems; foreach (string errorMessage in csvImporterSurfaceLines.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterSurfaceLinesException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } /// - /// Imports the scenarios. + /// Imports the scenarios. /// /// Name of the file. private void ImportScenarios(string fileName) @@ -323,19 +263,47 @@ ScenariosRecords = csvImporterScenarios.ImportedItems; foreach (string errorMessage in csvImporterScenarios.ErrorMessages) { - var logmessage = new LogMessage(LogMessageType.Error, this, errorMessage); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); } } catch (CsvImporterScenariosException e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } catch (Exception e) { - var logmessage = new LogMessage(LogMessageType.FatalError, this, e.Message); - ErrorMessages.Add(logmessage); + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); } } + + /// + /// Imports the soils. + /// + /// Name of the file. + private void ImportSoils(string fileName) + { + try + { + var csvImporterSoils = new CsvImporterSoils(fileName); + SoilsRecords = csvImporterSoils.ImportedItems; + foreach (string errorMessage in csvImporterSoils.ErrorMessages) + { + var logMessage = new LogMessage(LogMessageType.Error, this, errorMessage); + ErrorMessages.Add(logMessage); + } + } + catch (CsvImporterSoilsException e) + { + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); + } + catch (Exception e) + { + var logMessage = new LogMessage(LogMessageType.FatalError, this, e.Message); + ErrorMessages.Add(logMessage); + } + } } \ No newline at end of file