Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SoilProfile/StochasticSoilModelReaderTest.cs =================================================================== diff -u -r2aa9661130f20e88c41dac921ffb780573dcf799 -re1a8e98d60853beefbdb8c84e70f14165680ad7b --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SoilProfile/StochasticSoilModelReaderTest.cs (.../StochasticSoilModelReaderTest.cs) (revision 2aa9661130f20e88c41dac921ffb780573dcf799) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/SoilProfile/StochasticSoilModelReaderTest.cs (.../StochasticSoilModelReaderTest.cs) (revision e1a8e98d60853beefbdb8c84e70f14165680ad7b) @@ -73,7 +73,7 @@ [Test] [TestCase("text.txt")] [TestCase("empty.soil")] - public void Constructor_IncorrectFormatFileOrInvalidSchema_ThrowsPipingCriticalFileReadException(string dbName) + public void Constructor_IncorrectFormatFileOrInvalidSchema_ThrowsCriticalFileReadException(string dbName) { // Setup string dbFile = Path.Combine(testDataPath, dbName); @@ -94,12 +94,12 @@ [Test] [TestCase("withoutSoilModelTables.soil")] - public void Constructor_InvalidSchemaThatPassesValidation_ThrowsPipingCriticalFileReadException(string dbName) + public void Constructor_InvalidSchemaThatPassesValidation_ThrowsCriticalFileReadException(string dbName) { // Setup string dbFile = Path.Combine(testDataPath, dbName); string expectedMessage = new FileReaderErrorMessageBuilder(dbFile). - Build(string.Format(Resources.StochasticSoilModelDatabaseReader_Failed_to_read_database, dbName)); + Build("Kan geen ondergrondmodellen lezen. Mogelijk bestaat de 'Segment' tabel niet."); // Precondition Assert.IsTrue(TestHelper.CanOpenFileForWrite(dbFile), "Precondition: file can be opened for edits."); @@ -114,6 +114,27 @@ } [Test] + [TestCase("nonUniqueSoilModelNames.soil")] + public void Constructor_NonUniqueSoilModelNames_ThrowsCriticalFileReadException(string dbName) + { + // Setup + string dbFile = Path.Combine(testDataPath, dbName); + string expectedMessage = new FileReaderErrorMessageBuilder(dbFile). + Build("Namen van ondergrondmodellen zijn niet uniek."); + + // Precondition + Assert.IsTrue(TestHelper.CanOpenFileForWrite(dbFile), "Precondition: file can be opened for edits."); + + // Call + TestDelegate test = () => { using (new StochasticSoilModelReader(dbFile)) {} }; + + // Assert + CriticalFileReadException exception = Assert.Throws(test); + Assert.AreEqual(expectedMessage, exception.Message); + Assert.IsTrue(TestHelper.CanOpenFileForWrite(dbFile)); + } + + [Test] public void ParameteredConstructor_PathToExistingFile_ExpectedValues() { // Setup