Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/ReferenceLineMetaImporterTest.cs =================================================================== diff -u -re3f0e0861e4d1f5faa32280e837777e8755b67d6 -r7d38bc43c1be859f9a410ed99c6dacb2a6f58126 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/ReferenceLineMetaImporterTest.cs (.../ReferenceLineMetaImporterTest.cs) (revision e3f0e0861e4d1f5faa32280e837777e8755b67d6) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/ReferenceLineMetaImporterTest.cs (.../ReferenceLineMetaImporterTest.cs) (revision 7d38bc43c1be859f9a410ed99c6dacb2a6f58126) @@ -25,6 +25,7 @@ using System.Linq; using Core.Common.IO.Exceptions; using Core.Common.TestUtil; +using NUnit.Extensions.Forms; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -33,7 +34,7 @@ namespace Ringtoets.Common.IO.Test { [TestFixture] - public class ReferenceLineMetaImporterTest + public class ReferenceLineMetaImporterTest : NUnitFormsAssertTest { private readonly string testDataPath = TestHelper.GetTestDataPath(TestDataPath.Ringtoets.Common.IO, "ReferenceLineMetaImporter"); @@ -197,5 +198,26 @@ Assert.AreEqual(validReferenceId, assessmentSectionMock.Id); mockRepository.VerifyAll(); } + + [Test] + public void Constructor_FileWithNonUniqueTrajectIds_ThrowsException() + { + // Setup + string pathToFolder = Path.Combine(testDataPath, "NonUniqueTrajectIds"); + + // Call + Action call = () => new ReferenceLineMetaImporter(pathToFolder); + + DialogBoxHandler = (name, wnd) => + { + var messageBoxTester = new MessageBoxTester(wnd); + messageBoxTester.ClickOk(); + }; + + // Assert + var shapeFile = Path.Combine(pathToFolder, "NonUniqueTrajectIds.shp"); + var expectedMessage = string.Format("Fout bij het lezen van bestand '{0}': De trajectid's niet uniek.", shapeFile); + TestHelper.AssertLogMessageIsGenerated(call, expectedMessage); + } } } \ No newline at end of file