Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs
===================================================================
diff -u -r2fb07c8f3570439b944b440665e8506007438650 -r50d02243937ff6a19020bf095c778252c1c47561
--- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 2fb07c8f3570439b944b440665e8506007438650)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -1,28 +1,7 @@
-// Copyright (C) Stichting Deltares 2016. All rights reserved.
-//
-// This file is part of Ringtoets.
-//
-// Ringtoets is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see .
-//
-// All names, logos, and references to "Deltares" are registered trademarks of
-// Stichting Deltares and remain full property of Stichting Deltares at all times.
-// All rights reserved.
-
-//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
//
// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
+// Runtime Version:4.0.30319.18444
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -723,6 +702,25 @@
}
///
+ /// Looks up a localized string similar to De kolom '{0}' mag maar 1x gedefinieerd zijn..
+ ///
+ public static string StructuresCharacteristicsCsvReader_Column_0_must_be_defined_only_once {
+ get {
+ return ResourceManager.GetString("StructuresCharacteristicsCsvReader_Column_0_must_be_defined_only_once", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Het bestand is niet geschikt om kunstwerken parameters uit te lezen (Verwachte koptekst moet de volgende kolommen bevatten: {0}..
+ ///
+ public static string StructuresCharacteristicsCsvReader_ValidateRequiredColumnIndices_Invalid_header_Must_have_columns_0_ {
+ get {
+ return ResourceManager.GetString("StructuresCharacteristicsCsvReader_ValidateRequiredColumnIndices_Invalid_header_M" +
+ "ust_have_columns_0_", resourceCulture);
+ }
+ }
+
+ ///
/// Looks up a localized string similar to Het kunstwerk heeft geen geldige waarde voor attribuut '{0}'..
///
public static string StructuresReader_GetNextStructure_Invalid_KWKIDENT {
Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx
===================================================================
diff -u -r2fb07c8f3570439b944b440665e8506007438650 -r50d02243937ff6a19020bf095c778252c1c47561
--- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 2fb07c8f3570439b944b440665e8506007438650)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -311,4 +311,10 @@
Het kunstwerk heeft geen geldige waarde voor attribuut '{0}'.
+
+ De kolom '{0}' mag maar 1x gedefinieerd zijn.
+
+
+ Het bestand is niet geschikt om kunstwerken parameters uit te lezen (Verwachte koptekst moet de volgende kolommen bevatten: {0}.
+
\ No newline at end of file
Index: Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs
===================================================================
diff -u -r653c18f73b4404d9ac58d818845474d68e48635d -r50d02243937ff6a19020bf095c778252c1c47561
--- Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs (.../StructuresCharacteristicsCsvReader.cs) (revision 653c18f73b4404d9ac58d818845474d68e48635d)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs (.../StructuresCharacteristicsCsvReader.cs) (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -26,6 +26,7 @@
using Core.Common.IO.Readers;
using Core.Common.Utils;
using Core.Common.Utils.Builders;
+using Ringtoets.Common.IO.Properties;
using CoreCommonUtilsResources = Core.Common.Utils.Properties.Resources;
namespace Ringtoets.Common.IO.Structures
@@ -43,7 +44,7 @@
{
"identificatie",
"kunstwerken.identificatie",
- "numeriekeWaarde",
+ "numeriekewaarde",
"standarddeviatie.variance",
"boolean"
};
@@ -70,13 +71,14 @@
/// Counts the number of parameter definitions found in the file.
///
/// An integer greater than or equal to 0, being the number of parameter rows.
- /// File/directory cannot be found or
+ /// File/directory cannot be found or
/// some other I/O related problem occurred or the header is not in the required format.
public int GetLineCount()
{
using (var reader = StreamReaderHelper.InitializeStreamReader(filePath))
{
- ValidateHeader(reader, 1);
+ lineNumber = 1;
+ ValidateHeader(reader);
return CountNonEmptyLines(reader, 2);
}
@@ -87,15 +89,15 @@
///
/// The next based on the read file,
/// or null when at the end of the file.
- ///
+ ///
/// Thrown when either:
///
/// - The file or directory cannot be found.
/// - The file is empty.
/// - Some I/O related problem occurred.
/// - The header is not in the required format.
///
- /// Thrown when either:
+ /// Thrown when either:
///
/// - The line does not contain the separator character.
/// - Location id field is empty or consists out of only white spaces.
@@ -144,14 +146,13 @@
/// Validates the header of the file.
///
/// The reader, which is currently at the header row.
- /// Row index used in error messaging.
- /// The header is not in the required format.
- private void ValidateHeader(TextReader reader, int currentLine)
+ /// The header is not in the required format.
+ private void ValidateHeader(TextReader reader)
{
string[] tokenizedHeader = GetTokenizedHeader(reader);
const int uninitializedValue = -999;
int[] requiredHeaderColumnIndices = GetRequiredHeaderColumnIndices(uninitializedValue, tokenizedHeader);
- ValidateRequiredColumnIndices(currentLine, requiredHeaderColumnIndices, uninitializedValue);
+ ValidateRequiredColumnIndices(requiredHeaderColumnIndices, uninitializedValue);
}
///
@@ -160,7 +161,7 @@
/// The reader at the row from which counting should start.
/// The current line, used for error messaging.
/// An integer greater than or equal to 0, being the number of parameter rows.
- /// An I/O exception occurred.
+ /// An I/O exception occurred.
private int CountNonEmptyLines(TextReader reader, int currentLine)
{
int count = 0, lineNumberForMessage = currentLine;
@@ -182,7 +183,7 @@
/// The opened text file reader.
/// Row number for error messaging.
/// The read line, or null when at the end of the file.
- /// An critical I/O exception occurred.
+ /// An critical I/O exception occurred.
private string ReadLineAndHandleIOExceptions(TextReader reader, int currentLine)
{
try
@@ -195,7 +196,7 @@
}
catch (IOException e)
{
- string errorMessage = string.Format((string)CoreCommonUtilsResources.Error_General_IO_ErrorMessage_0_,
+ string errorMessage = string.Format((string) CoreCommonUtilsResources.Error_General_IO_ErrorMessage_0_,
e.Message);
var fullErrorMessage = new FileReaderErrorMessageBuilder(filePath).Build(errorMessage);
throw new CriticalFileReadException(fullErrorMessage, e);
@@ -206,15 +207,15 @@
/// Reads the header and sets the internal indices of the required header columns.
///
/// The reader used to read the file.
- /// The file is empty or some I/O exception
+ /// The file is empty or some I/O exception
/// occurred or the header is not in the required format.
private void IndexFile(TextReader reader)
{
string[] tokenizedHeader = GetTokenizedHeader(reader);
const int uninitializedValue = -999;
int[] requiredHeaderColumnIndices = GetRequiredHeaderColumnIndices(uninitializedValue, tokenizedHeader);
- ValidateRequiredColumnIndices(lineNumber, requiredHeaderColumnIndices, uninitializedValue);
+ ValidateRequiredColumnIndices(requiredHeaderColumnIndices, uninitializedValue);
SetColumnIndices(requiredHeaderColumnIndices);
}
@@ -224,7 +225,7 @@
///
/// The reader used to read the file.
/// The header split based on .
- /// The file is empty or some I/O exception
+ /// The file is empty or some I/O exception
/// occurred.
private string[] GetTokenizedHeader(TextReader reader)
{
@@ -249,26 +250,33 @@
int index = Array.IndexOf(requiredHeaderColumns, columnName);
if (index != -1)
{
- // TODO: same column multiple times!
- requiredHeaderColumnIndices[index] = columnIndex;
+ if (requiredHeaderColumnIndices[index] == initialColumnIndexValue)
+ {
+ requiredHeaderColumnIndices[index] = columnIndex;
+ }
+ else
+ {
+ string message = string.Format(Resources.StructuresCharacteristicsCsvReader_Column_0_must_be_defined_only_once, columnName);
+ throw CreateCriticalFileReadException(lineNumber, message);
+ }
}
}
return requiredHeaderColumnIndices;
}
///
- ///
+ /// Checks if all required header columns have been matched.
///
- ///
- ///
- ///
- /// The header is not in the required format.
- private void ValidateRequiredColumnIndices(int currentLine, int[] requiredHeaderColumnIndices, int uninitializedValue)
+ /// The array of matched column indices.
+ /// The initial index value put in .
+ /// The header is not in the required format.
+ private void ValidateRequiredColumnIndices(int[] requiredHeaderColumnIndices, int uninitializedValue)
{
if (requiredHeaderColumnIndices.Any(i => i == uninitializedValue))
{
- throw CreateCriticalFileReadException(currentLine, string.Format("Het bestand is niet geschikt om kunstwerken parameters uit te lezen (Verwachte koptekst moet de volgende kolommen bevatten: {0}.",
- string.Join(", ", requiredHeaderColumns)));
+ string message = string.Format(Resources.StructuresCharacteristicsCsvReader_ValidateRequiredColumnIndices_Invalid_header_Must_have_columns_0_,
+ string.Join(", ", requiredHeaderColumns));
+ throw CreateCriticalFileReadException(lineNumber, message);
}
}
@@ -286,7 +294,7 @@
///
/// The next line which is not a white line, or null when no non-white
/// line could be found before the end of file.
- /// An critical I/O exception occurred.
+ /// An critical I/O exception occurred.
private string ReadNextNonEmptyLine(StreamReader reader)
{
string readText;
@@ -309,7 +317,7 @@
///
/// The read text.
///
- /// Thrown when either:
+ /// Thrown when either:
///
/// - does not contain the separator character.
/// - Location id field is empty or consists out of only white spaces.
@@ -345,7 +353,7 @@
///
/// The text.
/// The tokenized parts.
- /// lacks separator character.
+ /// lacks separator character.
private string[] TokenizeString(string readText)
{
if (!readText.Contains(separator))
@@ -363,7 +371,7 @@
///
/// The tokenized text.
/// The location ID.
- /// Location ID field is empty or only has whitespaces.
+ /// Location ID field is empty or only has whitespaces.
private string ParseLocationId(string[] tokenizedText)
{
string locationId = tokenizedText[locationIdIndex];
@@ -380,7 +388,7 @@
/// The tokenized text.
///
/// The parameter ID.
- /// Parameter ID field is empty or only has whitespaces.
+ /// Parameter ID field is empty or only has whitespaces.
private string ParseParameterId(string[] tokenizedText)
{
string parameterId = tokenizedText[parameterIdIndex];
@@ -396,7 +404,7 @@
///
/// The tokenized text.
/// The numeric value (can be ).
- /// When the numeric value field is not a number
+ /// When the numeric value field is not a number
/// or when it's too large or too small to be represented as .
private double ParseNumericValue(string[] tokenizedText)
{
@@ -409,7 +417,7 @@
///
/// The tokenized text.
/// The standard deviation or coefficient of variation value (can be ).
- /// When the standard deviation or coefficient
+ /// When the standard deviation or coefficient
/// of variation value field is not a number or when it's too large or too small
/// to be represented as .
private double ParseVarianceValue(string[] tokenizedText)
@@ -425,7 +433,7 @@
/// Name of the parameter.
/// when is null
/// or only whitespaces; otherwise the parsed number.
- /// When is
+ /// When is
/// not a number or when it's too large or too small to be represented as .
private double ParseDoubleValue(string doubleValueText, string parameterName)
{
@@ -454,7 +462,7 @@
///
/// The tokenized text.
/// The based on the text in the file.
- /// When the 'boolean' field is not a valid value.
+ /// When the 'boolean' field is not a valid value.
private VarianceType ParseVarianceType(string[] tokenizedText)
{
string varianceTypeText = tokenizedText[varianceTypeIndex];
@@ -486,12 +494,12 @@
}
///
- /// Throws a configured instance of .
+ /// Throws a configured instance of .
///
/// The line number being read.
/// The critical error message.
/// Optional: exception that caused this exception to be thrown.
- /// New with message set.
+ /// New with message set.
private LineParseException CreateLineParseException(int currentLine, string lineParseErrorMessage, Exception innerException = null)
{
string locationDescription = string.Format(CoreCommonUtilsResources.TextFile_On_LineNumber_0_, currentLine);
@@ -501,12 +509,12 @@
}
///
- /// Throws a configured instance of .
+ /// Throws a configured instance of .
///
/// The line number being read.
/// The critical error message.
/// Optional: exception that caused this exception to be thrown.
- /// New with message and inner exception set.
+ /// New with message and inner exception set.
private CriticalFileReadException CreateCriticalFileReadException(int currentLine, string criticalErrorMessage, Exception innerException = null)
{
string locationDescription = string.Format(CoreCommonUtilsResources.TextFile_On_LineNumber_0_,
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs
===================================================================
diff -u -r653c18f73b4404d9ac58d818845474d68e48635d -r50d02243937ff6a19020bf095c778252c1c47561
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs (.../StructuresCharacteristicsCsvReaderTest.cs) (revision 653c18f73b4404d9ac58d818845474d68e48635d)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs (.../StructuresCharacteristicsCsvReaderTest.cs) (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -63,7 +63,7 @@
TestDelegate call = () => new StructuresCharacteristicsCsvReader(corruptPath);
// Assert
- string innerExpectedMessage = string.Format((string)UtilsResources.Error_Path_cannot_contain_Characters_0_,
+ string innerExpectedMessage = string.Format((string) UtilsResources.Error_Path_cannot_contain_Characters_0_,
string.Join(", ", Path.GetInvalidFileNameChars()));
string expectedMessage = new FileReaderErrorMessageBuilder(corruptPath).Build(innerExpectedMessage);
TestHelper.AssertThrowsArgumentExceptionAndTestMessage(call, expectedMessage);
@@ -87,14 +87,15 @@
// Setup
const string invalidFilePath = "I_do_not_exist.csv";
- var reader = new StructuresCharacteristicsCsvReader(invalidFilePath);
+ using (var reader = new StructuresCharacteristicsCsvReader(invalidFilePath))
+ {
+ // Call
+ TestDelegate call = () => reader.GetLineCount();
- // Call
- TestDelegate call = () => reader.GetLineCount();
-
- // Assert
- string message = Assert.Throws(call).Message;
- Assert.AreEqual("Fout bij het lezen van bestand 'I_do_not_exist.csv': Het bestand bestaat niet.", message);
+ // Assert
+ string message = Assert.Throws(call).Message;
+ Assert.AreEqual("Fout bij het lezen van bestand 'I_do_not_exist.csv': Het bestand bestaat niet.", message);
+ }
}
[Test]
@@ -103,32 +104,166 @@
// Setup
string invalidFilePath = Path.Combine("I_do_not_exist", "I do not exist either.csv");
- var reader = new StructuresCharacteristicsCsvReader(invalidFilePath);
+ using (var reader = new StructuresCharacteristicsCsvReader(invalidFilePath))
+ {
+ // Call
+ TestDelegate call = () => reader.GetLineCount();
- // Call
- TestDelegate call = () => reader.GetLineCount();
+ // Assert
+ string message = Assert.Throws(call).Message;
+ string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}': Het bestandspad verwijst naar een map die niet bestaat.",
+ invalidFilePath);
+ Assert.AreEqual(expectedMessage, message);
+ }
+ }
- // Assert
- string message = Assert.Throws(call).Message;
- string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}': Het bestandspad verwijst naar een map die niet bestaat.",
- invalidFilePath);
- Assert.AreEqual(expectedMessage, message);
+ [Test]
+ public void GetLineCount_EmptyFile_ThrowCriticalFileReadException()
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures", "StructuresCharacteristicsCsvFiles", "EmptyFile.csv"));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ TestDelegate call = () => reader.GetLineCount();
+
+ // Assert
+ string message = Assert.Throws(call).Message;
+ string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 1: Het bestand is leeg.",
+ filePath);
+ Assert.AreEqual(expectedMessage, message);
+ }
}
[Test]
+ [TestCase("InvalidFile_LocationIdMissing.csv")]
+ [TestCase("InvalidFile_ParameterIdMissing.csv")]
+ [TestCase("InvalidFile_NumericValueMissing.csv")]
+ [TestCase("InvalidFile_VarianceValueMissing.csv")]
+ [TestCase("InvalidFile_BooleanMissing.csv")]
+ public void GetLineCount_FileLackingLocationIdColumn_ThrowCriticalFileReadException(string fileName)
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures",
+ "StructuresCharacteristicsCsvFiles",
+ fileName));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ TestDelegate call = () => reader.GetLineCount();
+
+ // Assert
+ string message = Assert.Throws(call).Message;
+ string expectedHeaderColumnsText = "identificatie, kunstwerken.identificatie, numeriekewaarde, standarddeviatie.variance, boolean";
+ string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 1: Het bestand is niet geschikt om kunstwerken parameters uit te lezen (Verwachte koptekst moet de volgende kolommen bevatten: {1}.",
+ filePath, expectedHeaderColumnsText);
+ Assert.AreEqual(expectedMessage, message);
+ }
+ }
+
+ [Test]
+ public void GetLineCount_ValidFileWithTwoLocationsAndAllHeightStructureParameters_ReturnCount()
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures",
+ "StructuresCharacteristicsCsvFiles",
+ "ValidFile_2Locations_AllHeightStructureParameters.csv"));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ int count = reader.GetLineCount();
+
+ // Assert
+ Assert.AreEqual(16, count);
+ }
+ }
+
+ [Test]
+ public void GetLineCount_ValidFileWithTwoLocationsAndAllHeightStructureParametersCondensed_ReturnCount()
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures",
+ "StructuresCharacteristicsCsvFiles",
+ "ValidFile_2Locations_AllHeightStructureParameters_CondensedAndDifferentOrder.csv"));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ int count = reader.GetLineCount();
+
+ // Assert
+ Assert.AreEqual(16, count);
+ }
+ }
+
+ [Test]
+ public void GetLineCount_ValidFileWithOneLocationsAndExtraWhiteLines_ReturnCount()
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures",
+ "StructuresCharacteristicsCsvFiles",
+ "ValidFile_1Location_AllHeightStructureParameters_ExtraWhiteLines.csv"));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ int count = reader.GetLineCount();
+
+ // Assert
+ Assert.AreEqual(8, count);
+ }
+ }
+
+ [Test]
+ [TestCase("InvalidFile_DuplicateLocationId.csv", "identificatie")]
+ [TestCase("InvalidFile_DuplicateParameterId.csv", "kunstwerken.identificatie")]
+ [TestCase("InvalidFile_DuplicateNumericalValue.csv", "numeriekewaarde")]
+ [TestCase("InvalidFile_DuplicateVarianceValue.csv", "standarddeviatie.variance")]
+ [TestCase("InvalidFile_DuplicateBoolean.csv", "boolean")]
+ public void GetLineCount_DuplicateColumn_ThrowCriticalFileReadException(string fileName, string columnName)
+ {
+ // Setup
+ string filePath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO,
+ Path.Combine("Structures",
+ "StructuresCharacteristicsCsvFiles",
+ fileName));
+
+ using (var reader = new StructuresCharacteristicsCsvReader(filePath))
+ {
+ // Call
+ TestDelegate call = () => reader.GetLineCount();
+
+ // Assert
+ string message = Assert.Throws(call).Message;
+ string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 1: De kolom '{1}' mag maar 1x gedefinieerd zijn.",
+ filePath, columnName);
+ Assert.AreEqual(expectedMessage, message);
+ }
+ }
+
+ [Test]
public void ReadLine_FileDoesNotExist_ThrowCriticalFileReadException()
{
// Setup
const string invalidFilePath = "I_do_not_exist.csv";
- var reader = new StructuresCharacteristicsCsvReader(invalidFilePath);
+ using (var reader = new StructuresCharacteristicsCsvReader(invalidFilePath))
+ {
+ // Call
+ TestDelegate call = () => reader.ReadLine();
- // Call
- TestDelegate call = () => reader.ReadLine();
-
- // Assert
- string message = Assert.Throws(call).Message;
- Assert.AreEqual("Fout bij het lezen van bestand 'I_do_not_exist.csv': Het bestand bestaat niet.", message);
+ // Assert
+ string message = Assert.Throws(call).Message;
+ Assert.AreEqual("Fout bij het lezen van bestand 'I_do_not_exist.csv': Het bestand bestaat niet.", message);
+ }
}
[Test]
@@ -137,16 +272,17 @@
// Setup
string invalidFilePath = Path.Combine("I_do_not_exist", "I do not exist either.csv");
- var reader = new StructuresCharacteristicsCsvReader(invalidFilePath);
+ using (var reader = new StructuresCharacteristicsCsvReader(invalidFilePath))
+ {
+ // Call
+ TestDelegate call = () => reader.ReadLine();
- // Call
- TestDelegate call = () => reader.ReadLine();
-
- // Assert
- string message = Assert.Throws(call).Message;
- string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}': Het bestandspad verwijst naar een map die niet bestaat.",
- invalidFilePath);
- Assert.AreEqual(expectedMessage, message);
+ // Assert
+ string message = Assert.Throws(call).Message;
+ string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}': Het bestandspad verwijst naar een map die niet bestaat.",
+ invalidFilePath);
+ Assert.AreEqual(expectedMessage, message);
+ }
}
}
}
\ No newline at end of file
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/EmptyFile.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/EmptyFile.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/EmptyFile.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1 @@
\ No newline at end of file
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_BooleanMissing.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_BooleanMissing.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_BooleanMissing.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateBoolean.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateBoolean.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateBoolean.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;1;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;1;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;0;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;1;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;0;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;1;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;1;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;0;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;1;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;0;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateLocationId.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateLocationId.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateLocationId.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;
+12;KUNST1;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;
+12;KUNST1;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;
+12;KUNST1;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;
+12;KUNST1;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;
+12;KUNST1;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST1;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;
+12;KUNST1;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;
+12;KUNST2;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;
+12;KUNST2;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;
+12;KUNST2;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;
+12;KUNST2;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST2;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;
+12;KUNST2;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateNumericalValue.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateNumericalValue.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateNumericalValue.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;45;0;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;5.9;0.01;1;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;18.5;0.05;1;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.1;0.15;0;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;4;0.05;1;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;1;0;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;500000;0.1;0;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;6.5;0.1;1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;;0;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;;0.01;1;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;;0.15;0;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;1;0;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;;0.1;0;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateParameterId.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateParameterId.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateParameterId.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;
+12;KUNST1;1;KW_HOOGTE2;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;
+12;KUNST1;1;KW_HOOGTE3;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;
+12;KUNST1;1;KW_HOOGTE4;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;
+12;KUNST1;1;KW_HOOGTE5;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;
+12;KUNST1;1;KW_HOOGTE6;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST1;1;KW_HOOGTE7;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;
+12;KUNST1;1;KW_HOOGTE8;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;
+12;KUNST2;1;KW_HOOGTE1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;
+12;KUNST2;1;KW_HOOGTE2;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;
+12;KUNST2;1;KW_HOOGTE3;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE4;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;
+12;KUNST2;1;KW_HOOGTE5;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE6;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST2;1;KW_HOOGTE7;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;
+12;KUNST2;1;KW_HOOGTE8;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateVarianceValue.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateVarianceValue.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_DuplicateVarianceValue.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;0.01;1;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;0.05;1;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0.15;0;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;0.05;1;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0.1;0;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;0.1;1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;0.01;1;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;0.05;1;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0.15;0;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;0.05;1;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0.1;0;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_LocationIdMissing.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_LocationIdMissing.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_LocationIdMissing.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;;;
+12;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;;;
+12;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;;;
+12;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;;;
+12;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;;;
+12;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;;;
+12;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;;;
+12;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;;;
+12;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;;;
+12;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;;;
+12;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;;;
+12;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;;;
+12;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;;;
+12;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;;;
+12;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;;;
+12;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;;;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_NumericValueMissing.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_NumericValueMissing.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_NumericValueMissing.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;0;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;0.01;1;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;0.05;1;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.15;0;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;0.05;1;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;0;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;0.1;0;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;0.1;1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;0;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;0.01;1;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.15;0;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;0.05;1;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;0;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;0.1;0;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_ParameterIdMissing.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_ParameterIdMissing.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_ParameterIdMissing.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;
+12;KUNST1;1;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;
+12;KUNST1;1;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;
+12;KUNST1;1;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;
+12;KUNST1;1;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;
+12;KUNST1;1;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST1;1;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;
+12;KUNST1;1;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;
+12;KUNST2;1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;
+12;KUNST2;1;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;
+12;KUNST2;1;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;1;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;
+12;KUNST2;1;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;
+12;KUNST2;1;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;
+12;KUNST2;1;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;
+12;KUNST2;1;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_VarianceValueMissing.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_VarianceValueMissing.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/InvalidFile_VarianceValueMissing.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;1;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;1;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;1;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;1;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;1;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;1;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;1;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;1;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_1Location_AllHeightStructureParameters_ExtraWhiteLines.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_1Location_AllHeightStructureParameters_ExtraWhiteLines.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_1Location_AllHeightStructureParameters_ExtraWhiteLines.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,18 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;;;
+
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;;;
+
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;;;
+
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;;;
+
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;;;
+
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;;;
+
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;;;
+
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;;;
+
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Namespace;Identificatie;Versie;Kunstwerken.identificatie;Parameter.code;Parameter.omschrijving;Grootheid.code;Grootheid.omschrijving;Eenheid.code;Eenheid.omschrijving;Hoedanigheid.code;Hoedanigheid.omschrijving;Waardebepalingsmethode.code;Waardebepalingsmethode.codespace;Waardebewerkingsmethode.code;Waardebewerkingsmethode.codespace;NumeriekeWaarde;Standarddeviatie.variance;Boolean;Kwaliteitsoordeel.code
+12;KUNST1;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;45;0;0;;;
+12;KUNST1;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;5.9;0.01;1;;;
+12;KUNST1;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;18.5;0.05;1;;;
+12;KUNST1;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;0.1;0.15;0;;;
+12;KUNST1;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;4;0.05;1;;;
+12;KUNST1;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;;;
+12;KUNST1;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;500000;0.1;0;;;
+12;KUNST1;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;6.5;0.1;1;;;
+12;KUNST2;1;KW_HOOGTE1;KUNSTW;Kunstwerk;ORIENTATIE;Ori�ntatie;grad;graden;;;Schematiseringshandleiding;;;;;0;0;;;
+12;KUNST2;1;KW_HOOGTE2;KRUIN;Kruin;NIVEAU;Niveau;m;meter;;;Schematiseringshandleiding;;;;;0.01;1;;;
+12;KUNST2;1;KW_HOOGTE3;STROM;Stroming;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;;;
+12;KUNST2;1;KW_HOOGTE4;OVS;Overslag;DEBIET;Debiet;m3/s/m;kubieke meter per seconden per meter;;;Schematiseringshandleiding;;;;;0.15;0;;;
+12;KUNST2;1;KW_HOOGTE5;KRUIN;Kruin;BREEDTE;Breedte;m;meter;;;Schematiseringshandleiding;;;;;0.05;1;;;
+12;KUNST2;1;KW_HOOGTE6;KUNSTW;Kunstwerk;FAALKANS;Faalkans;;;;;Schematiseringshandleiding;;;;1;0;0;;;
+12;KUNST2;1;KW_HOOGTE7;KOMBERG;Komberging;OPPERVLAKTE;Oppervlakte;m2;vierkante meter;;;Schematiseringshandleiding;;;;;0.1;0;;;
+12;KUNST2;1;KW_HOOGTE8;PEIL;Peil;VERHOGING;Verhoging;m;meter;;;Schematiseringshandleiding;;;;;0.1;1;;;
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters_CondensedAndDifferentOrder.csv
===================================================================
diff -u
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters_CondensedAndDifferentOrder.csv (revision 0)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/Structures/StructuresCharacteristicsCsvFiles/ValidFile_2Locations_AllHeightStructureParameters_CondensedAndDifferentOrder.csv (revision 50d02243937ff6a19020bf095c778252c1c47561)
@@ -0,0 +1,17 @@
+Boolean;Standarddeviatie.variance;NumeriekeWaarde;Identificatie;Kunstwerken.identificatie
+0;0;45;KUNST1;KW_HOOGTE1
+1;0.01;5.9;KUNST1;KW_HOOGTE2
+1;0.05;18.5;KUNST1;KW_HOOGTE3
+0;0.15;0.1;KUNST1;KW_HOOGTE4
+1;0.05;4;KUNST1;KW_HOOGTE5
+0;0;1;KUNST1;KW_HOOGTE6
+0;0.1;500000;KUNST1;KW_HOOGTE7
+1;0.1;6.5;KUNST1;KW_HOOGTE8
+0;0;;KUNST2;KW_HOOGTE1
+1;0.01;;KUNST2;KW_HOOGTE2
+1;0.05;;KUNST2;KW_HOOGTE3
+0;0.15;;KUNST2;KW_HOOGTE4
+1;0.05;;KUNST2;KW_HOOGTE5
+0;0;1;KUNST2;KW_HOOGTE6
+0;0.1;;KUNST2;KW_HOOGTE7
+1;0.1;;KUNST2;KW_HOOGTE8