Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs =================================================================== diff -u -r7da60d6a03b1443834aba2cf1e9857351acb5699 -rac7e2e1536c9fc926fbef42cd770754cdf369cf8 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 7da60d6a03b1443834aba2cf1e9857351acb5699) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision ac7e2e1536c9fc926fbef42cd770754cdf369cf8) @@ -1047,7 +1047,7 @@ } /// - /// Looks up a localized string similar to Regel verwacht van {0} elementen, maar het zijn er {1}.. + /// Looks up a localized string similar to Regel verwacht {0} elementen, maar het zijn er {1}.. /// public static string StructuresCharacteristicsCsvReader_CreateStructuresParameterRow_Line_should_have_NumberOfExpectedElements_0_but_has_ActualNumberOfElements_1_ { get { @@ -1105,7 +1105,10 @@ } /// - /// 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}.. + /// Looks up a localized string similar to Het bestand is niet geschikt om kunstwerken parameters uit te lezen. De koptekst moet de volgende kolommen bevatten: + ///{0} + /// + ///Bovenstaande kolomtitels moeten gescheiden zijn door het karakter ';'.. /// public static string StructuresCharacteristicsCsvReader_ValidateRequiredColumnIndices_Invalid_header_Must_have_columns_0_ { get { Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx =================================================================== diff -u -r7da60d6a03b1443834aba2cf1e9857351acb5699 -rac7e2e1536c9fc926fbef42cd770754cdf369cf8 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 7da60d6a03b1443834aba2cf1e9857351acb5699) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision ac7e2e1536c9fc926fbef42cd770754cdf369cf8) @@ -315,13 +315,16 @@ De kolom '{0}' mag maar één keer gedefinieerd zijn. - Het bestand is niet geschikt om kunstwerken parameters uit te lezen (Verwachte koptekst moet de volgende kolommen bevatten: {0}. + Het bestand is niet geschikt om kunstwerken parameters uit te lezen. De koptekst moet de volgende kolommen bevatten: +{0} + +Bovenstaande kolomtitels moeten gescheiden zijn door het karakter ';'. Regel ontbreekt het verwachte scheidingsteken (het karakter: {0}). - Regel verwacht van {0} elementen, maar het zijn er {1}. + Regel verwacht {0} elementen, maar het zijn er {1}. '{0}' kolom mag geen lege waardes bevatten. Index: Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs =================================================================== diff -u -re1cd9f27d423d4bfc6a0be647fa8388b3fefb8a2 -rac7e2e1536c9fc926fbef42cd770754cdf369cf8 --- Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs (.../StructuresCharacteristicsCsvReader.cs) (revision e1cd9f27d423d4bfc6a0be647fa8388b3fefb8a2) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresCharacteristicsCsvReader.cs (.../StructuresCharacteristicsCsvReader.cs) (revision ac7e2e1536c9fc926fbef42cd770754cdf369cf8) @@ -281,7 +281,7 @@ if (requiredHeaderColumnIndices.Any(i => i == uninitializedValue)) { string message = string.Format(Resources.StructuresCharacteristicsCsvReader_ValidateRequiredColumnIndices_Invalid_header_Must_have_columns_0_, - string.Join(", ", requiredHeaderColumns)); + string.Join(Environment.NewLine, requiredHeaderColumns.Select(rh => "* " + rh))); throw CreateCriticalFileReadException(lineNumber, message); } } Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs =================================================================== diff -u -r7da60d6a03b1443834aba2cf1e9857351acb5699 -rac7e2e1536c9fc926fbef42cd770754cdf369cf8 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs (.../StructuresCharacteristicsCsvReaderTest.cs) (revision 7da60d6a03b1443834aba2cf1e9857351acb5699) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresCharacteristicsCsvReaderTest.cs (.../StructuresCharacteristicsCsvReaderTest.cs) (revision ac7e2e1536c9fc926fbef42cd770754cdf369cf8) @@ -159,9 +159,20 @@ // Assert string message = Assert.Throws(call).Message; - string expectedHeaderColumnsText = "identificatie, kunstwerken.identificatie, alfanumeriekewaarde, 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); + string expectedHeaderColumnsText = "* identificatie" + Environment.NewLine + + "* kunstwerken.identificatie" + Environment.NewLine + + "* alfanumeriekewaarde" + Environment.NewLine + + "* numeriekewaarde" + Environment.NewLine + + "* standarddeviatie.variance" + Environment.NewLine + + "* boolean" + Environment.NewLine; + 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. De koptekst moet de volgende kolommen bevatten:" + + Environment.NewLine + + "{1}" + + Environment.NewLine + + "Bovenstaande kolomtitels moeten gescheiden zijn door het karakter ';'.", + filePath, + expectedHeaderColumnsText); + Assert.AreEqual(expectedMessage, message); } } @@ -329,9 +340,20 @@ // Assert string message = Assert.Throws(call).Message; - string expectedHeaderColumnsText = "identificatie, kunstwerken.identificatie, alfanumeriekewaarde, 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); + string expectedHeaderColumnsText = "* identificatie" + Environment.NewLine + + "* kunstwerken.identificatie" + Environment.NewLine + + "* alfanumeriekewaarde" + Environment.NewLine + + "* numeriekewaarde" + Environment.NewLine + + "* standarddeviatie.variance" + Environment.NewLine + + "* boolean" + Environment.NewLine; + 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. De koptekst moet de volgende kolommen bevatten:" + + Environment.NewLine + + "{1}" + + Environment.NewLine + + "Bovenstaande kolomtitels moeten gescheiden zijn door het karakter ';'.", + filePath, + expectedHeaderColumnsText); + Assert.AreEqual(expectedMessage, message); } } @@ -415,7 +437,7 @@ // Assert string message = Assert.Throws(call).Message; - string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 2: Regel verwacht van 21 elementen, maar het zijn er 20.", + string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 2: Regel verwacht 21 elementen, maar het zijn er 20.", filePath); Assert.AreEqual(expectedMessage, message); } @@ -435,7 +457,7 @@ // Assert string message = Assert.Throws(call).Message; - string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 2: Regel verwacht van 21 elementen, maar het zijn er 23.", + string expectedMessage = string.Format("Fout bij het lezen van bestand '{0}' op regel 2: Regel verwacht 21 elementen, maar het zijn er 23.", filePath); Assert.AreEqual(expectedMessage, message); }