Index: Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs =================================================================== diff -u -r86594ccd7329d320872573a1d066fe18959d3cea -r257a3ef859b74f2cd13cbcb38602ed0cebd5c467 --- Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../IHydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 86594ccd7329d320872573a1d066fe18959d3cea) +++ Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../IHydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 257a3ef859b74f2cd13cbcb38602ed0cebd5c467) @@ -45,12 +45,14 @@ /// The hydraulic boundary database to update the settings for. /// The read hydraulic location /// configuration database settings to update with. + /// Indicator whether to use the preprocessor closure. /// The file path of the hlcd. /// All objects that have been affected by the update. /// Thrown when /// or is null. IEnumerable Update(HydraulicBoundaryDatabase hydraulicBoundaryDatabase, ReadHydraulicLocationConfigurationDatabaseSettings readHydraulicLocationConfigurationDatabaseSettings, + bool usePreprocessorClosure, string hlcdFilePath); } } \ No newline at end of file Index: Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs =================================================================== diff -u -r86594ccd7329d320872573a1d066fe18959d3cea -r257a3ef859b74f2cd13cbcb38602ed0cebd5c467 --- Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs (.../HydraulicLocationConfigurationDatabaseImporter.cs) (revision 86594ccd7329d320872573a1d066fe18959d3cea) +++ Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs (.../HydraulicLocationConfigurationDatabaseImporter.cs) (revision 257a3ef859b74f2cd13cbcb38602ed0cebd5c467) @@ -124,7 +124,8 @@ } AddHydraulicLocationConfigurationSettingsToDataModel( - readHydraulicLocationConfigurationDatabase.ReadHydraulicLocationConfigurationDatabaseSettings?.Single()); + readHydraulicLocationConfigurationDatabase.ReadHydraulicLocationConfigurationDatabaseSettings?.Single(), + readHydraulicLocationConfigurationDatabase.UsePreprocessorClosure); return true; } @@ -196,10 +197,11 @@ } } - private void AddHydraulicLocationConfigurationSettingsToDataModel(ReadHydraulicLocationConfigurationDatabaseSettings readHydraulicLocationConfigurationDatabaseSettings) + private void AddHydraulicLocationConfigurationSettingsToDataModel(ReadHydraulicLocationConfigurationDatabaseSettings readHydraulicLocationConfigurationDatabaseSettings, + bool usePrepocessorClosure) { NotifyProgress(RiskeerCommonIOResources.Importer_ProgressText_Adding_imported_data_to_AssessmentSection, 3, numberOfSteps); - changedObservables.AddRange(updateHandler.Update(hydraulicBoundaryDatabase, readHydraulicLocationConfigurationDatabaseSettings, FilePath)); + changedObservables.AddRange(updateHandler.Update(hydraulicBoundaryDatabase, readHydraulicLocationConfigurationDatabaseSettings, usePrepocessorClosure, FilePath)); } private ReadResult HandleCriticalFileReadError(Exception e) Index: Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs =================================================================== diff -u -r7aa40a2aaf78e4491dab935e8e9c9b36fcbb1b6d -r257a3ef859b74f2cd13cbcb38602ed0cebd5c467 --- Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 7aa40a2aaf78e4491dab935e8e9c9b36fcbb1b6d) +++ Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 257a3ef859b74f2cd13cbcb38602ed0cebd5c467) @@ -67,6 +67,7 @@ public IEnumerable Update(HydraulicBoundaryDatabase hydraulicBoundaryDatabase, ReadHydraulicLocationConfigurationDatabaseSettings readHydraulicLocationConfigurationDatabaseSettings, + bool usePreprocessorClosure, string hlcdFilePath) { if (hydraulicBoundaryDatabase == null) @@ -81,7 +82,7 @@ HydraulicLocationConfigurationSettingsUpdateHelper.SetHydraulicLocationConfigurationSettings( hydraulicBoundaryDatabase.HydraulicLocationConfigurationSettings, - readHydraulicLocationConfigurationDatabaseSettings, false, hlcdFilePath); + readHydraulicLocationConfigurationDatabaseSettings, usePreprocessorClosure, hlcdFilePath); var changedObjects = new List { Index: Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs =================================================================== diff -u -r4a91111c1fda2c629fef0f552a2b33d9dbb5df92 -r257a3ef859b74f2cd13cbcb38602ed0cebd5c467 --- Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs (.../HydraulicLocationConfigurationDatabaseImporterTest.cs) (revision 4a91111c1fda2c629fef0f552a2b33d9dbb5df92) +++ Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs (.../HydraulicLocationConfigurationDatabaseImporterTest.cs) (revision 257a3ef859b74f2cd13cbcb38602ed0cebd5c467) @@ -291,7 +291,7 @@ var mocks = new MockRepository(); var handler = mocks.Stub(); handler.Stub(h => h.InquireConfirmation()).Return(true); - handler.Stub(h => h.Update(null, null, null)).IgnoreArguments().Return(Enumerable.Empty()); + handler.Stub(h => h.Update(null, null, false, null)).IgnoreArguments().Return(Enumerable.Empty()); mocks.ReplayAll(); var progressChangeNotifications = new List(); @@ -358,7 +358,7 @@ var mocks = new MockRepository(); var handler = mocks.Stub(); handler.Stub(h => h.InquireConfirmation()).Return(true); - handler.Stub(h => h.Update(null, null, null)).IgnoreArguments().Return(Enumerable.Empty()); + handler.Stub(h => h.Update(null, null, false, null)).IgnoreArguments().Return(Enumerable.Empty()); mocks.ReplayAll(); HydraulicBoundaryDatabase hydraulicBoundaryDatabase = CreateHydraulicBoundaryDatabase(validHrdFilePath); @@ -427,6 +427,7 @@ handler.Expect(h => h.InquireConfirmation()).Return(true); handler.Expect(h => h.Update(Arg.Is.Same(hydraulicBoundaryDatabase), Arg.Is.Null, + Arg.Is.Equal(false), Arg.Is.Equal(filePath))) .Return(Enumerable.Empty()); mocks.ReplayAll(); @@ -459,6 +460,7 @@ handler.Expect(h => h.InquireConfirmation()).Return(true); handler.Expect(h => h.Update(Arg.Is.Same(hydraulicBoundaryDatabase), Arg.Is.NotNull, + Arg.Is.Equal(false), Arg.Is.Equal(filePath))) .Return(Enumerable.Empty()); mocks.ReplayAll(); @@ -492,6 +494,7 @@ handler.Expect(h => h.InquireConfirmation()).Return(true); handler.Expect(h => h.Update(Arg.Is.NotNull, Arg.Is.Null, + Arg.Is.Equal(false), Arg.Is.NotNull)) .Return(new[] { Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs =================================================================== diff -u -r01ac28cffccda3451783c513b8d2d9130ff0ec60 -r257a3ef859b74f2cd13cbcb38602ed0cebd5c467 --- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision 01ac28cffccda3451783c513b8d2d9130ff0ec60) +++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision 257a3ef859b74f2cd13cbcb38602ed0cebd5c467) @@ -109,7 +109,7 @@ var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSection()); // Call - TestDelegate call = () => handler.Update(null, ReadHydraulicLocationConfigurationDatabaseSettingsTestFactory.Create(), ""); + TestDelegate call = () => handler.Update(null, ReadHydraulicLocationConfigurationDatabaseSettingsTestFactory.Create(), false, ""); // Assert var exception = Assert.Throws(call); @@ -123,7 +123,8 @@ var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSection()); // Call - TestDelegate call = () => handler.Update(new HydraulicBoundaryDatabase(), ReadHydraulicLocationConfigurationDatabaseSettingsTestFactory.Create(), null); + TestDelegate call = () => handler.Update(new HydraulicBoundaryDatabase(), ReadHydraulicLocationConfigurationDatabaseSettingsTestFactory.Create(), + false, null); // Assert var exception = Assert.Throws(call); @@ -137,9 +138,10 @@ const string hlcdFilePath = "some/file/path"; var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSection()); var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase(); + bool usePreprocessorClosure = new Random(21).NextBoolean(); // Call - Action call = () => handler.Update(hydraulicBoundaryDatabase, null, hlcdFilePath); + Action call = () => handler.Update(hydraulicBoundaryDatabase, null, usePreprocessorClosure, hlcdFilePath); // Assert const string expectedMessage = "De tabel 'ScenarioInformation' in het HLCD bestand is niet aanwezig, er worden standaardwaarden " + @@ -151,6 +153,7 @@ Assert.AreEqual("WBI2017", settings.ScenarioName); Assert.AreEqual(2023, settings.Year); Assert.AreEqual("WBI2017", settings.Scope); + Assert.AreEqual(usePreprocessorClosure, settings.UsePreprocessorClosure); Assert.AreEqual("Conform WBI2017", settings.SeaLevel); Assert.AreEqual("Conform WBI2017", settings.RiverDischarge); Assert.AreEqual("Conform WBI2017", settings.LakeLevel); @@ -167,9 +170,10 @@ var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSection()); var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase(); ReadHydraulicLocationConfigurationDatabaseSettings readSettings = ReadHydraulicLocationConfigurationDatabaseSettingsTestFactory.Create(); + bool usePreprocessorClosure = new Random(21).NextBoolean(); // Call - Action call = () => handler.Update(hydraulicBoundaryDatabase, readSettings, hlcdFilePath); + Action call = () => handler.Update(hydraulicBoundaryDatabase, readSettings, usePreprocessorClosure, hlcdFilePath); // Assert TestHelper.AssertLogMessagesCount(call, 0); @@ -179,6 +183,7 @@ Assert.AreEqual(readSettings.ScenarioName, settings.ScenarioName); Assert.AreEqual(readSettings.Year, settings.Year); Assert.AreEqual(readSettings.Scope, settings.Scope); + Assert.AreEqual(usePreprocessorClosure, settings.UsePreprocessorClosure); Assert.AreEqual(readSettings.SeaLevel, settings.SeaLevel); Assert.AreEqual(readSettings.RiverDischarge, settings.RiverDischarge); Assert.AreEqual(readSettings.LakeLevel, settings.LakeLevel); @@ -195,7 +200,7 @@ var hydraulicBoundaryDatabase = new HydraulicBoundaryDatabase(); // Call - IEnumerable changedObjects = handler.Update(hydraulicBoundaryDatabase, null, "some/file/path"); + IEnumerable changedObjects = handler.Update(hydraulicBoundaryDatabase, null, false, "some/file/path"); // Assert CollectionAssert.AreEqual(new[] @@ -223,7 +228,7 @@ Assert.IsTrue(duneLocations.All(l => l.Output != null)); // Call - IEnumerable changedObjects = handler.Update(assessmentSection.HydraulicBoundaryDatabase, null, "some/file/path"); + IEnumerable changedObjects = handler.Update(assessmentSection.HydraulicBoundaryDatabase, null, false, "some/file/path"); // Assert Assert.IsTrue(locations.All(l => !l.HasOutput));