Index: Application/Ringtoets/test/Application.Ringtoets.Migration.Test/RingtoetsCreateScriptTest.cs =================================================================== diff -u -r4adc05fb0d7306ef1c21c56052193f526a4fad54 -r22d820ab9e0333ce64e9ea74ac19867042906298 --- Application/Ringtoets/test/Application.Ringtoets.Migration.Test/RingtoetsCreateScriptTest.cs (.../RingtoetsCreateScriptTest.cs) (revision 4adc05fb0d7306ef1c21c56052193f526a4fad54) +++ Application/Ringtoets/test/Application.Ringtoets.Migration.Test/RingtoetsCreateScriptTest.cs (.../RingtoetsCreateScriptTest.cs) (revision 22d820ab9e0333ce64e9ea74ac19867042906298) @@ -20,9 +20,11 @@ // All rights reserved. using System; +using System.Data.SQLite; using System.IO; using Core.Common.TestUtil; using Migration.Scripts.Data; +using Migration.Scripts.Data.Exceptions; using NUnit.Framework; namespace Application.Ringtoets.Migration.Test @@ -122,5 +124,29 @@ File.SetAttributes(filePath, attributes); } } + + [Test] + public void CreateEmptyVersionedFile_QueryFails_ThrowsCriticalMigrationException() + { + // Setup + const string query = "THIS WILL FAIL"; + const string version = "Valid version"; + + string targetFilename = Path.GetRandomFileName(); + string filePath = TestHelper.GetTestDataPath(TestDataPath.Application.Ringtoets.Migration, targetFilename); + var createScript = new RingtoetsCreateScript(version, query); + + // Call + TestDelegate call = () => createScript.CreateEmptyVersionedFile(filePath); + + // Assert + using (new FileDisposeHelper(filePath)) + { + CriticalMigrationException exception = Assert.Throws(call); + Assert.AreEqual($"Het aanmaken van het Ringtoets bestand versie {version} is mislukt.", + exception.Message); + Assert.IsInstanceOf(exception.InnerException); + } + } } } \ No newline at end of file