Index: Riskeer/DuneErosion/src/Riskeer.DuneErosion.Plugin/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategy.cs
===================================================================
diff -u -r5f375656595d8fee8727648409e202f67f441daa -re295f5b43c1e0d1f4f605565d2c656027670a476
--- Riskeer/DuneErosion/src/Riskeer.DuneErosion.Plugin/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategy.cs (.../DuneErosionFailureMechanismSectionResultUpdateStrategy.cs) (revision 5f375656595d8fee8727648409e202f67f441daa)
+++ Riskeer/DuneErosion/src/Riskeer.DuneErosion.Plugin/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategy.cs (.../DuneErosionFailureMechanismSectionResultUpdateStrategy.cs) (revision e295f5b43c1e0d1f4f605565d2c656027670a476)
@@ -20,6 +20,7 @@
// All rights reserved.
using System;
+using Riskeer.Common.Data.FailureMechanism;
using Riskeer.Common.IO.FileImporters;
using Riskeer.DuneErosion.Data;
@@ -30,7 +31,7 @@
/// from an old instance.
///
public class DuneErosionFailureMechanismSectionResultUpdateStrategy
- : IFailureMechanismSectionResultUpdateStrategy
+ : IFailureMechanismSectionResultUpdateStrategy
{
public void UpdateSectionResultOld(DuneErosionFailureMechanismSectionResultOld origin, DuneErosionFailureMechanismSectionResultOld target)
{
@@ -54,5 +55,24 @@
target.UseManualAssembly = origin.UseManualAssembly;
target.ManualAssemblyCategoryGroup = origin.ManualAssemblyCategoryGroup;
}
+
+ public void UpdateSectionResult(AdoptableFailureMechanismSectionResult origin, AdoptableFailureMechanismSectionResult target)
+ {
+ if (origin == null)
+ {
+ throw new ArgumentNullException(nameof(origin));
+ }
+
+ if (target == null)
+ {
+ throw new ArgumentNullException(nameof(target));
+ }
+
+ target.IsRelevant = origin.IsRelevant;
+ target.InitialFailureMechanismResult = origin.InitialFailureMechanismResult;
+ target.ManualInitialFailureMechanismResultSectionProbability = origin.ManualInitialFailureMechanismResultSectionProbability;
+ target.FurtherAnalysisNeeded = origin.FurtherAnalysisNeeded;
+ target.RefinedSectionProbability = origin.RefinedSectionProbability;
+ }
}
}
\ No newline at end of file
Index: Riskeer/DuneErosion/test/Riskeer.DuneErosion.Plugin.Test/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategyTest.cs
===================================================================
diff -u -r570ba782656147a3d242852a1c273132175f1bc3 -re295f5b43c1e0d1f4f605565d2c656027670a476
--- Riskeer/DuneErosion/test/Riskeer.DuneErosion.Plugin.Test/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategyTest.cs (.../DuneErosionFailureMechanismSectionResultUpdateStrategyTest.cs) (revision 570ba782656147a3d242852a1c273132175f1bc3)
+++ Riskeer/DuneErosion/test/Riskeer.DuneErosion.Plugin.Test/FileImporters/DuneErosionFailureMechanismSectionResultUpdateStrategyTest.cs (.../DuneErosionFailureMechanismSectionResultUpdateStrategyTest.cs) (revision e295f5b43c1e0d1f4f605565d2c656027670a476)
@@ -19,8 +19,10 @@
// Stichting Deltares and remain full property of Stichting Deltares at all times.
// All rights reserved.
+using System;
using NUnit.Framework;
using Riskeer.AssemblyTool.Data;
+using Riskeer.Common.Data.FailureMechanism;
using Riskeer.Common.Data.TestUtil;
using Riskeer.Common.Plugin.TestUtil.FileImporters;
using Riskeer.Common.Primitives;
@@ -31,7 +33,7 @@
{
[TestFixture]
public class DuneErosionFailureMechanismSectionResultUpdateStrategyTest : FailureMechanismSectionResultUpdateStrategyTestFixture<
- DuneErosionFailureMechanismSectionResultUpdateStrategy, DuneErosionFailureMechanismSectionResultOld>
+ DuneErosionFailureMechanismSectionResultUpdateStrategy, DuneErosionFailureMechanismSectionResultOld, AdoptableFailureMechanismSectionResult>
{
protected override DuneErosionFailureMechanismSectionResultOld CreateEmptySectionResultOld()
{
@@ -67,5 +69,32 @@
Assert.AreEqual(originResult.UseManualAssembly, targetResult.UseManualAssembly);
Assert.AreEqual(originResult.ManualAssemblyCategoryGroup, targetResult.ManualAssemblyCategoryGroup);
}
+
+ protected override AdoptableFailureMechanismSectionResult CreateEmptySectionResult()
+ {
+ return new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection());
+ }
+
+ protected override AdoptableFailureMechanismSectionResult CreateConfiguredSectionResult()
+ {
+ var random = new Random(39);
+ return new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection())
+ {
+ IsRelevant = true,
+ InitialFailureMechanismResult = AdoptableInitialFailureMechanismResultType.Manual,
+ ManualInitialFailureMechanismResultSectionProbability = random.NextDouble(),
+ FurtherAnalysisNeeded = true,
+ RefinedSectionProbability = random.NextDouble()
+ };
+ }
+
+ protected override void AssertSectionResult(AdoptableFailureMechanismSectionResult originResult, AdoptableFailureMechanismSectionResult targetResult)
+ {
+ Assert.AreEqual(originResult.IsRelevant, targetResult.IsRelevant);
+ Assert.AreEqual(originResult.InitialFailureMechanismResult, targetResult.InitialFailureMechanismResult);
+ Assert.AreEqual(originResult.ManualInitialFailureMechanismResultSectionProbability, targetResult.ManualInitialFailureMechanismResultSectionProbability);
+ Assert.AreEqual(originResult.FurtherAnalysisNeeded, targetResult.FurtherAnalysisNeeded);
+ Assert.AreEqual(originResult.RefinedSectionProbability, targetResult.RefinedSectionProbability);
+ }
}
}
\ No newline at end of file