Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Readers/ConfigurationReaderTest.cs =================================================================== diff -u -r9adb7863b832fbef7249803d20750688061c846e -r789a1cf222034a729160372a650c4b5249d1e796 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Readers/ConfigurationReaderTest.cs (.../ConfigurationReaderTest.cs) (revision 9adb7863b832fbef7249803d20750688061c846e) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Readers/ConfigurationReaderTest.cs (.../ConfigurationReaderTest.cs) (revision 789a1cf222034a729160372a650c4b5249d1e796) @@ -179,6 +179,23 @@ } } + [Test] + public void Constructor_FileInvalidBasedOnSchemaDefinition_ThrowCriticalFileReadExceptionWithExpectedMessage() + { + // Setup + string filePath = Path.Combine(testDirectoryPath, "invalidFolderNoName.xml"); + + // Call + TestDelegate call = () => new TestConfigurationReader(filePath, schemaString); + + // Assert + string expectedMessage = $"Fout bij het lezen van bestand '{filePath}': het XML-document dat de configuratie" + + " voor de berekeningen beschrijft is niet geldig. De validatie geeft de volgende melding" + + " op regel 3, positie 4: The required attribute \'naam\' is missing."; + var exception = Assert.Throws(call); + Assert.AreEqual(expectedMessage, exception.Message); + } + public ConfigurationReaderTest() { schemaString = File.ReadAllText(Path.Combine(testDirectoryPath, "ConfiguratieSchema.xsd"));