Index: Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs
===================================================================
diff -u -r9bdde447cc42b31705d83a975a414625f7f81bcb -r3cf4db7514bf18c69df8848ccebfaad27c052145
--- Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../IHydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 9bdde447cc42b31705d83a975a414625f7f81bcb)
+++ Riskeer/Integration/src/Riskeer.Integration.IO/Handlers/IHydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../IHydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 3cf4db7514bf18c69df8848ccebfaad27c052145)
@@ -46,11 +46,13 @@
/// database for.
/// The read hydraulic location configuration database to
/// update with.
+ /// The lookup with the hydraulic boundary databases to update.
/// The file path of the hydraulic location configuration database.
/// All objects that have been affected by the update.
/// Thrown when any parameter is null.
IEnumerable Update(HydraulicBoundaryData hydraulicBoundaryData,
ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase,
+ IDictionary hydraulicBoundaryDatabaseLookup,
string hlcdFilePath);
}
}
\ No newline at end of file
Index: Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs
===================================================================
diff -u -rf17046af367322baf3bf56202f48e23641c1e9f5 -r3cf4db7514bf18c69df8848ccebfaad27c052145
--- Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs (.../HydraulicLocationConfigurationDatabaseImporter.cs) (revision f17046af367322baf3bf56202f48e23641c1e9f5)
+++ Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicLocationConfigurationDatabaseImporter.cs (.../HydraulicLocationConfigurationDatabaseImporter.cs) (revision 3cf4db7514bf18c69df8848ccebfaad27c052145)
@@ -1,4 +1,4 @@
-// Copyright (C) Stichting Deltares 2022. All rights reserved.
+// Copyright (C) Stichting Deltares 2022. All rights reserved.
//
// This file is part of Riskeer.
//
@@ -175,7 +175,8 @@
private void SetReadHydraulicLocationConfigurationSettingsToDataModel(ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase)
{
NotifyProgress(RiskeerCommonIOResources.Importer_ProgressText_Adding_imported_data_to_AssessmentSection, numberOfSteps, numberOfSteps);
- changedObservables.AddRange(updateHandler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, FilePath));
+ changedObservables.AddRange(updateHandler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase,
+ new Dictionary(), FilePath));
}
private ReadResult HandleCriticalFileReadError(Exception e)
Index: Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs
===================================================================
diff -u -r9bdde447cc42b31705d83a975a414625f7f81bcb -r3cf4db7514bf18c69df8848ccebfaad27c052145
--- Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 9bdde447cc42b31705d83a975a414625f7f81bcb)
+++ Riskeer/Integration/src/Riskeer.Integration.Plugin/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandler.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandler.cs) (revision 3cf4db7514bf18c69df8848ccebfaad27c052145)
@@ -73,6 +73,7 @@
public IEnumerable Update(HydraulicBoundaryData hydraulicBoundaryData,
ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase,
+ IDictionary hydraulicBoundaryDatabaseLookup,
string hlcdFilePath)
{
if (hydraulicBoundaryData == null)
@@ -85,6 +86,11 @@
throw new ArgumentNullException(nameof(readHydraulicLocationConfigurationDatabase));
}
+ if (hydraulicBoundaryDatabaseLookup == null)
+ {
+ throw new ArgumentNullException(nameof(hydraulicBoundaryDatabaseLookup));
+ }
+
if (hlcdFilePath == null)
{
throw new ArgumentNullException(nameof(hlcdFilePath));
Index: Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs
===================================================================
diff -u -rf17046af367322baf3bf56202f48e23641c1e9f5 -r3cf4db7514bf18c69df8848ccebfaad27c052145
--- Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs (.../HydraulicLocationConfigurationDatabaseImporterTest.cs) (revision f17046af367322baf3bf56202f48e23641c1e9f5)
+++ Riskeer/Integration/test/Riskeer.Integration.IO.Test/Importers/HydraulicLocationConfigurationDatabaseImporterTest.cs (.../HydraulicLocationConfigurationDatabaseImporterTest.cs) (revision 3cf4db7514bf18c69df8848ccebfaad27c052145)
@@ -237,7 +237,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, null, null)).IgnoreArguments().Return(Enumerable.Empty());
mocks.ReplayAll();
var progressChangeNotifications = new List();
@@ -269,6 +269,7 @@
handler.Expect(h => h.InquireConfirmation()).Return(true);
handler.Expect(h => h.Update(Arg.Is.Same(hydraulicBoundaryData),
Arg.Is.NotNull,
+ Arg>.Is.NotNull,
Arg.Is.Equal(hlcdFilePath)))
.Return(Enumerable.Empty());
mocks.ReplayAll();
@@ -301,6 +302,7 @@
handler.Expect(h => h.InquireConfirmation()).Return(true);
handler.Expect(h => h.Update(Arg.Is.Same(hydraulicBoundaryData),
Arg.Is.NotNull,
+ Arg>.Is.NotNull,
Arg.Is.Equal(filePath)))
.Return(Enumerable.Empty());
mocks.ReplayAll();
@@ -334,6 +336,7 @@
handler.Expect(h => h.InquireConfirmation()).Return(true);
handler.Expect(h => h.Update(Arg.Is.NotNull,
Arg.Is.NotNull,
+ Arg>.Is.NotNull,
Arg.Is.NotNull))
.Return(new[]
{
@@ -393,7 +396,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, null, null)).IgnoreArguments().Return(Enumerable.Empty());
mocks.ReplayAll();
HydraulicBoundaryData hydraulicBoundaryData = CreateLinkedHydraulicBoundaryData();
Index: Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs
===================================================================
diff -u -r9bdde447cc42b31705d83a975a414625f7f81bcb -r3cf4db7514bf18c69df8848ccebfaad27c052145
--- Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision 9bdde447cc42b31705d83a975a414625f7f81bcb)
+++ Riskeer/Integration/test/Riskeer.Integration.Plugin.Test/Handlers/HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs (.../HydraulicLocationConfigurationDatabaseUpdateHandlerTest.cs) (revision 3cf4db7514bf18c69df8848ccebfaad27c052145)
@@ -125,7 +125,8 @@
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
// Call
- void Call() => handler.Update(null, ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1), "");
+ void Call() => handler.Update(null, ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1),
+ new Dictionary(), "");
// Assert
var exception = Assert.Throws(Call);
@@ -139,21 +140,36 @@
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
// Call
- void Call() => handler.Update(new HydraulicBoundaryData(), null, "");
+ void Call() => handler.Update(new HydraulicBoundaryData(), null, new Dictionary(), "");
// Assert
var exception = Assert.Throws(Call);
Assert.AreEqual("readHydraulicLocationConfigurationDatabase", exception.ParamName);
}
[Test]
+ public void Update_HydraulicBoundaryDatabaseLookupNull_ThrowsArgumentNullException()
+ {
+ // Setup
+ var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
+
+ // Call
+ void Call() => handler.Update(new HydraulicBoundaryData(), ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1), null, "");
+
+ // Assert
+ var exception = Assert.Throws(Call);
+ Assert.AreEqual("hydraulicBoundaryDatabaseLookup", exception.ParamName);
+ }
+
+ [Test]
public void Update_HlcdFilePathNull_ThrowsArgumentNullException()
{
// Setup
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
// Call
- void Call() => handler.Update(new HydraulicBoundaryData(), ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1), null);
+ void Call() => handler.Update(new HydraulicBoundaryData(), ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1),
+ new Dictionary(), null);
// Assert
var exception = Assert.Throws(Call);
@@ -168,9 +184,10 @@
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
var hydraulicBoundaryData = new HydraulicBoundaryData();
ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase = ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1);
+ var lookup = new Dictionary();
// Call
- void Call() => handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, hlcdFilePath);
+ void Call() => handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, lookup, hlcdFilePath);
// Assert
const string expectedMessage = "De tabel 'ScenarioInformation' in het HLCD bestand is niet aanwezig. Er worden standaardwaarden " +
@@ -191,16 +208,17 @@
}
[Test]
- public void Update_ReadHydraulicLocationConfigurationDatabaseWithSetetings_SetsExpectedValuesAndDoesNotLog()
+ public void Update_ReadHydraulicLocationConfigurationDatabaseWithSettings_SetsExpectedValuesAndDoesNotLog()
{
// Setup
const string hlcdFilePath = "some/file/path";
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
var hydraulicBoundaryData = new HydraulicBoundaryData();
ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase = ReadHydraulicLocationConfigurationDatabaseTestFactory.CreateWithConfigurationSettings(1);
+ var lookup = new Dictionary();
// Call
- void Call() => handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, hlcdFilePath);
+ void Call() => handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, lookup, hlcdFilePath);
// Assert
TestHelper.AssertLogMessagesCount(Call, 0);
@@ -226,9 +244,10 @@
var handler = new HydraulicLocationConfigurationDatabaseUpdateHandler(CreateAssessmentSectionWithHydraulicBoundaryDatabases());
var hydraulicBoundaryData = new HydraulicBoundaryData();
ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase = ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1);
+ var lookup = new Dictionary();
// Call
- IEnumerable changedObjects = handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, "some/file/path");
+ IEnumerable changedObjects = handler.Update(hydraulicBoundaryData, readHydraulicLocationConfigurationDatabase, lookup, "some/file/path");
// Assert
CollectionAssert.AreEqual(new Observable[]
@@ -268,6 +287,7 @@
IEnumerable changedObjects = handler.Update(
assessmentSection.HydraulicBoundaryData,
ReadHydraulicLocationConfigurationDatabaseTestFactory.Create(1),
+ new Dictionary(),
"some/file/path");
// Assert