Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensions.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensions.cs (.../WaveImpactAsphaltCoverFailureMechanismCreateExtensions.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensions.cs (.../WaveImpactAsphaltCoverFailureMechanismCreateExtensions.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -44,6 +44,7 @@
var entity = mechanism.Create(FailureMechanismType.WaveImpactOnAsphaltRevetment, registry);
AddEntitiesForSectionResults(mechanism.SectionResults, registry);
AddEntitiesForForeshoreProfiles(mechanism.ForeshoreProfiles, entity, registry);
+ entity.CalculationGroupEntity = mechanism.WaveConditionsCalculationGroup.Create(registry, 0);
return entity;
}
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs
===================================================================
diff -u -r0540405a7dbabf85dc02db30c79c3c58b0faeea6 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision 0540405a7dbabf85dc02db30c79c3c58b0faeea6)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -181,6 +181,37 @@
return group;
}
+ ///
+ /// Read the and use the information to construct
+ /// a .
+ ///
+ /// The to create
+ /// for.
+ /// The object keeping track of read operations.
+ /// A new .
+ /// Thrown when is null.
+ internal static CalculationGroup ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(this CalculationGroupEntity entity,
+ ReadConversionCollector collector)
+ {
+ if (collector == null)
+ {
+ throw new ArgumentNullException("collector");
+ }
+
+ var group = new CalculationGroup(entity.Name, Convert.ToBoolean(entity.IsEditable));
+
+ foreach (object childEntity in GetChildEntitiesInOrder(entity))
+ {
+ var childCalculationGroupEntity = childEntity as CalculationGroupEntity;
+ if (childCalculationGroupEntity != null)
+ {
+ group.Children.Add(childCalculationGroupEntity.ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(collector));
+ }
+ }
+
+ return group;
+ }
+
private static IEnumerable GetChildEntitiesInOrder(CalculationGroupEntity entity)
{
var sortedList = new SortedList();
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs (.../FailureMechanismEntityReadExtensions.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs (.../FailureMechanismEntityReadExtensions.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -403,6 +403,8 @@
entity.ReadCommonFailureMechanismProperties(failureMechanism, collector);
entity.ReadWaveImpactAsphaltCoverMechanismSectionResults(failureMechanism, collector);
entity.ReadForeshoreProfiles(failureMechanism.ForeshoreProfiles, collector);
+
+ ReadWaveImpactAsphaltCoverRootCalculationGroup(entity.CalculationGroupEntity, failureMechanism.WaveConditionsCalculationGroup, collector);
}
private static void ReadWaveImpactAsphaltCoverMechanismSectionResults(this FailureMechanismEntity entity, WaveImpactAsphaltCoverFailureMechanism failureMechanism, ReadConversionCollector collector)
@@ -416,6 +418,17 @@
}
}
+ private static void ReadWaveImpactAsphaltCoverRootCalculationGroup(CalculationGroupEntity rootCalculationGroupEntity,
+ CalculationGroup targetRootCalculationGroup,
+ ReadConversionCollector collector)
+ {
+ CalculationGroup rootCalculationGroup = rootCalculationGroupEntity.ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(collector);
+ foreach (ICalculationBase calculationBase in rootCalculationGroup.Children)
+ {
+ targetRootCalculationGroup.Children.Add(calculationBase);
+ }
+ }
+
#endregion
#region Grass Cover Erosion Outwards
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensionsTest.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensionsTest.cs (.../WaveImpactAsphaltCoverFailureMechanismCreateExtensionsTest.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/WaveImpactAsphaltCover/WaveImpactAsphaltCoverFailureMechanismCreateExtensionsTest.cs (.../WaveImpactAsphaltCoverFailureMechanismCreateExtensionsTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -26,6 +26,7 @@
using Application.Ringtoets.Storage.DbContext;
using Application.Ringtoets.Storage.TestUtil;
using NUnit.Framework;
+using Ringtoets.Common.Data.Calculation;
using Ringtoets.StabilityStoneCover.Data;
using Ringtoets.WaveImpactAsphaltCover.Data;
@@ -144,5 +145,38 @@
// Assert
Assert.AreEqual(1, entity.ForeshoreProfileEntities.Count);
}
+
+ [Test]
+ [TestCase(true)]
+ [TestCase(false)]
+ public void Create_WithCalculationGroup_ReturnFailureMechanismEntityWithCalculationGroupEntities(bool isRelevant)
+ {
+ // Setup
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(new CalculationGroup("A", true));
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(new CalculationGroup("B", true));
+
+ var registry = new PersistenceRegistry();
+
+ // Call
+ FailureMechanismEntity entity = failureMechanism.Create(registry);
+
+ // Assert
+ Assert.IsNotNull(entity);
+ Assert.AreEqual(failureMechanism.WaveConditionsCalculationGroup.Name, entity.CalculationGroupEntity.Name);
+ Assert.AreEqual(Convert.ToByte(failureMechanism.WaveConditionsCalculationGroup.IsNameEditable), entity.CalculationGroupEntity.IsEditable);
+ Assert.AreEqual(0, entity.CalculationGroupEntity.Order);
+
+ CalculationGroupEntity[] childGroupEntities = entity.CalculationGroupEntity.CalculationGroupEntity1
+ .OrderBy(cge => cge.Order)
+ .ToArray();
+ Assert.AreEqual(2, childGroupEntities.Length);
+ Assert.AreEqual("A", childGroupEntities[0].Name);
+ Assert.AreEqual(1, childGroupEntities[0].IsEditable);
+ Assert.AreEqual(0, childGroupEntities[0].Order);
+ Assert.AreEqual("B", childGroupEntities[1].Name);
+ Assert.AreEqual(1, childGroupEntities[1].IsEditable);
+ Assert.AreEqual(1, childGroupEntities[1].Order);
+ }
}
}
\ No newline at end of file
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs (.../StorageSqLiteIntegrationTest.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/IntegrationTests/StorageSqLiteIntegrationTest.cs (.../StorageSqLiteIntegrationTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -1076,6 +1076,7 @@
WaveImpactAsphaltCoverFailureMechanism actualFailureMechanism)
{
AssertForeshoreProfiles(expectedFailureMechanism.ForeshoreProfiles, actualFailureMechanism.ForeshoreProfiles);
+ AssertCalculationGroup(expectedFailureMechanism.WaveConditionsCalculationGroup, actualFailureMechanism.WaveConditionsCalculationGroup);
}
private static void AssertDikeProfiles(IList expectedDikeProfiles, IList actualDikeProfiles)
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/AssessmentSectionEntityReadExtensionsTest.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/AssessmentSectionEntityReadExtensionsTest.cs (.../AssessmentSectionEntityReadExtensionsTest.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/AssessmentSectionEntityReadExtensionsTest.cs (.../AssessmentSectionEntityReadExtensionsTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -615,6 +615,45 @@
[Test]
[TestCase(true)]
[TestCase(false)]
+ public void Read_WithWaveImpactAsphaltCoverFailureMechanismWithWaveConditionsCalculationGroupsSet_ReturnsNewAssessmentSectionWithCalculationGroupsInFailureMechanism(bool isRelevant)
+ {
+ // Setup
+ var entity = CreateAssessmentSectionEntity();
+
+ var failureMechanismEntity = new FailureMechanismEntity
+ {
+ FailureMechanismType = (int)FailureMechanismType.WaveImpactOnAsphaltRevetment,
+ CalculationGroupEntity = new CalculationGroupEntity
+ {
+ CalculationGroupEntity1 =
+ {
+ new CalculationGroupEntity
+ {
+ Order = 0
+ },
+ new CalculationGroupEntity
+ {
+ Order = 1
+ }
+ }
+ },
+ IsRelevant = Convert.ToByte(isRelevant)
+ };
+ entity.FailureMechanismEntities.Add(failureMechanismEntity);
+
+ var collector = new ReadConversionCollector();
+
+ // Call
+ var section = entity.Read(collector);
+
+ // Assert
+ IList childCalculationGroups = section.WaveImpactAsphaltCover.WaveConditionsCalculationGroup.Children;
+ Assert.AreEqual(2, childCalculationGroups.Count);
+ }
+
+ [Test]
+ [TestCase(true)]
+ [TestCase(false)]
public void Read_WithStandAloneFailureMechanismsSet_ReturnsNewAssessmentSectionWithFailureMechanismsSet(bool isRelevant)
{
// Setup
@@ -626,7 +665,6 @@
var closingEntityComment = "16";
var failingOfConstructionPointEntityComment = "22";
var failingOfConstructionLengthwiseEntityComment = "23";
- var waveImpactEntityComment = "77";
var waterPressureEntityComment = "78";
var grassCoverSlipoffOutwardsEntityComment = "134";
var grassCoverSlipoffInwardsEntityComment = "135";
@@ -640,7 +678,6 @@
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, closingEntityComment, FailureMechanismType.ReliabilityClosingOfStructure));
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, failingOfConstructionPointEntityComment, FailureMechanismType.StrengthAndStabilityPointConstruction));
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, failingOfConstructionLengthwiseEntityComment, FailureMechanismType.StrengthAndStabilityParallelConstruction));
- entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, waveImpactEntityComment, FailureMechanismType.WaveImpactOnAsphaltRevetment));
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, waterPressureEntityComment, FailureMechanismType.WaterOverpressureAsphaltRevetment));
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, grassCoverSlipoffOutwardsEntityComment, FailureMechanismType.GrassRevetmentSlidingOutwards));
entity.FailureMechanismEntities.Add(CreateFailureMechanismEntity(isRelevant, grassCoverSlipoffInwardsEntityComment, FailureMechanismType.GrassRevetmentSlidingInwards));
@@ -660,7 +697,6 @@
AssertFailureMechanismEqual(isRelevant, closingEntityComment, 2, section.ClosingStructure);
AssertFailureMechanismEqual(isRelevant, failingOfConstructionPointEntityComment, 2, section.StrengthStabilityPointConstruction);
AssertFailureMechanismEqual(isRelevant, failingOfConstructionLengthwiseEntityComment, 2, section.StrengthStabilityLengthwiseConstruction);
- AssertFailureMechanismEqual(isRelevant, waveImpactEntityComment, 2, section.WaveImpactAsphaltCover);
AssertFailureMechanismEqual(isRelevant, waterPressureEntityComment, 2, section.WaterPressureAsphaltCover);
AssertFailureMechanismEqual(isRelevant, grassCoverSlipoffOutwardsEntityComment, 2, section.GrassCoverSlipOffOutwards);
AssertFailureMechanismEqual(isRelevant, grassCoverSlipoffInwardsEntityComment, 2, section.GrassCoverSlipOffInwards);
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs
===================================================================
diff -u -r0540405a7dbabf85dc02db30c79c3c58b0faeea6 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs (.../CalculationGroupEntityReadExtentionsTest.cs) (revision 0540405a7dbabf85dc02db30c79c3c58b0faeea6)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs (.../CalculationGroupEntityReadExtentionsTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -461,7 +461,7 @@
}
[Test]
- public void ReadAsGrassCoverErosionOutwardsCalculationGroup_CollectorIsNull_ThrowArgumentNullException()
+ public void ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup_CollectorIsNull_ThrowArgumentNullException()
{
// Setup
var entity = new CalculationGroupEntity();
@@ -766,5 +766,112 @@
var rootChildGroup2 = (CalculationGroup)rootChildren[3];
Assert.AreEqual("group2", rootChildGroup2.Name);
}
+
+ [Test]
+ public void ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup_CollectorIsNull_ThrowArgumentNullException()
+ {
+ // Setup
+ var entity = new CalculationGroupEntity();
+
+ // Call
+ TestDelegate call = () => entity.ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(null);
+
+ // Assert
+ string paramName = Assert.Throws(call).ParamName;
+ Assert.AreEqual("collector", paramName);
+ }
+
+ [Test]
+ [TestCase("HAbba", 1)]
+ [TestCase("Dooeis", 0)]
+ public void ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup_EntityWithoutChildren_CreateCalculationGroupWithoutChildren(
+ string name, byte isEditable)
+ {
+ // Setup
+ var entity = new CalculationGroupEntity
+ {
+ Name = name,
+ IsEditable = isEditable
+ };
+
+ var collector = new ReadConversionCollector();
+
+ // Call
+ CalculationGroup group = entity.ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(collector);
+
+ // Assert
+ Assert.AreEqual(name, group.Name);
+ Assert.AreEqual(Convert.ToBoolean(isEditable), group.IsNameEditable);
+ CollectionAssert.IsEmpty(group.Children);
+ }
+
+ [Test]
+ public void ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup_EntityWithChildGroups_CreateCalculationGroupWithChildGroups()
+ {
+ // Setup
+ var rootGroupEntity = new CalculationGroupEntity
+ {
+ Name = "A",
+ CalculationGroupEntity1 =
+ {
+ new CalculationGroupEntity
+ {
+ Name = "AA",
+ IsEditable = 1,
+ Order = 0
+ },
+ new CalculationGroupEntity
+ {
+ Name = "AB",
+ IsEditable = 0,
+ CalculationGroupEntity1 =
+ {
+ new CalculationGroupEntity
+ {
+ Name = "ABA",
+ IsEditable = 0,
+ Order = 0
+ },
+ new CalculationGroupEntity
+ {
+ Name = "ABB",
+ IsEditable = 1,
+ Order = 1
+ }
+ },
+ Order = 1
+ }
+ }
+ };
+
+ var collector = new ReadConversionCollector();
+
+ // Call
+ var rootGroup = rootGroupEntity.ReadAsWaveImpactAsphaltCoverWaveConditionsCalculationGroup(collector);
+
+ // Assert
+ Assert.AreEqual("A", rootGroup.Name);
+ Assert.IsFalse(rootGroup.IsNameEditable);
+
+ ICalculationBase[] rootChildren = rootGroup.Children.ToArray();
+ var rootChildGroup1 = (CalculationGroup)rootChildren[0];
+ Assert.AreEqual("AA", rootChildGroup1.Name);
+ Assert.IsTrue(rootChildGroup1.IsNameEditable);
+ CollectionAssert.IsEmpty(rootChildGroup1.Children);
+ var rootChildGroup2 = (CalculationGroup)rootChildren[1];
+ Assert.AreEqual("AB", rootChildGroup2.Name);
+ Assert.IsFalse(rootChildGroup2.IsNameEditable);
+
+ ICalculationBase[] rootChildGroup2Children = rootChildGroup2.Children.ToArray();
+ var rootChildGroup1Child1 = (CalculationGroup)rootChildGroup2Children[0];
+ Assert.AreEqual("ABA", rootChildGroup1Child1.Name);
+ Assert.IsFalse(rootChildGroup1Child1.IsNameEditable);
+ CollectionAssert.IsEmpty(rootChildGroup1Child1.Children);
+ var rootChildGroup1Child2 = (CalculationGroup)rootChildGroup2Children[1];
+ Assert.AreEqual("ABB", rootChildGroup1Child2.Name);
+ Assert.IsTrue(rootChildGroup1Child2.IsNameEditable);
+ CollectionAssert.IsEmpty(rootChildGroup1Child2.Children);
+ }
+
}
}
\ No newline at end of file
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs
===================================================================
diff -u -r8aaa7b9a8a2826cf8da31d0fd136f2d559933afe -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision 8aaa7b9a8a2826cf8da31d0fd136f2d559933afe)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -33,6 +33,7 @@
using Ringtoets.GrassCoverErosionOutwards.Data;
using Ringtoets.Piping.Data;
using Ringtoets.StabilityStoneCover.Data;
+using Ringtoets.WaveImpactAsphaltCover.Data;
namespace Application.Ringtoets.Storage.Test.Read
{
@@ -694,5 +695,92 @@
}
#endregion
+
+ #region Wave Impact Asphalt Cover
+
+ [Test]
+ public void ReadAsWaveImpactAsphaltCoverFailureMechanism_WithWaveConditionsCalculationGroup_ReturnsNewWaveImpactAsphaltCoverFailureMechanismWithCalculationGroupSet()
+ {
+ // Setup
+ var entity = new FailureMechanismEntity
+ {
+ CalculationGroupEntity = new CalculationGroupEntity
+ {
+ IsEditable = 0,
+ Name = "Berekeningen",
+ Order = 0,
+ CalculationGroupEntity1 =
+ {
+ new CalculationGroupEntity
+ {
+ IsEditable = 1,
+ Name = "Child1",
+ Order = 1
+ },
+ new CalculationGroupEntity
+ {
+ IsEditable = 1,
+ Name = "Child2",
+ Order = 0
+ },
+ }
+ }
+ };
+ var collector = new ReadConversionCollector();
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+
+ // Call
+ entity.ReadAsWaveImpactAsphaltCoverFailureMechanism(failureMechanism, collector);
+
+ // Assert
+ Assert.AreEqual(2, failureMechanism.WaveConditionsCalculationGroup.Children.Count);
+
+ ICalculationBase child1 = failureMechanism.WaveConditionsCalculationGroup.Children[0];
+ Assert.AreEqual("Child2", child1.Name);
+
+ ICalculationBase child2 = failureMechanism.WaveConditionsCalculationGroup.Children[1];
+ Assert.AreEqual("Child1", child2.Name);
+ }
+
+ [Test]
+ public void ReadAsWaveImpactAsphaltCoverFailureMechanism_WithForeshoreProfiles_ReturnsNewWaveImpactAsphaltCoverFailureMechanismWithForeshoreProfilesSet()
+ {
+ // Setup
+ var entity = new FailureMechanismEntity
+ {
+ CalculationGroupEntity = new CalculationGroupEntity(),
+ ForeshoreProfileEntities =
+ {
+ new ForeshoreProfileEntity
+ {
+ Name = "Child1",
+ GeometryXml = new Point2DXmlSerializer().ToXml(Enumerable.Empty()),
+ Order = 1
+ },
+ new ForeshoreProfileEntity
+ {
+ Name = "Child2",
+ GeometryXml = new Point2DXmlSerializer().ToXml(Enumerable.Empty()),
+ Order = 0
+ },
+ }
+ };
+ var collector = new ReadConversionCollector();
+ var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism();
+
+ // Call
+ entity.ReadAsWaveImpactAsphaltCoverFailureMechanism(failureMechanism, collector);
+
+ // Assert
+ Assert.AreEqual(2, failureMechanism.ForeshoreProfiles.Count);
+
+ ForeshoreProfile child1 = failureMechanism.ForeshoreProfiles[0];
+ Assert.AreEqual("Child2", child1.Name);
+
+ ForeshoreProfile child2 = failureMechanism.ForeshoreProfiles[1];
+ Assert.AreEqual("Child1", child2.Name);
+ }
+
+ #endregion
}
}
\ No newline at end of file
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/RingtoetsProjectTestHelperTest.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/RingtoetsProjectTestHelperTest.cs (.../RingtoetsProjectTestHelperTest.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/RingtoetsProjectTestHelperTest.cs (.../RingtoetsProjectTestHelperTest.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -161,6 +161,11 @@
WaveImpactAsphaltCoverFailureMechanism waveImpactAsphaltCoverFailureMechanism = assessmentSection.WaveImpactAsphaltCover;
Assert.AreEqual(2, waveImpactAsphaltCoverFailureMechanism.ForeshoreProfiles.Count);
+ Assert.NotNull(waveImpactAsphaltCoverFailureMechanism.WaveConditionsCalculationGroup);
+ Assert.AreEqual(2, waveImpactAsphaltCoverFailureMechanism.WaveConditionsCalculationGroup.Children.Count);
+
+ Assert.AreEqual(0, ((CalculationGroup)waveImpactAsphaltCoverFailureMechanism.WaveConditionsCalculationGroup.Children[0]).Children.Count);
+ Assert.AreEqual(0, ((CalculationGroup)waveImpactAsphaltCoverFailureMechanism.WaveConditionsCalculationGroup.Children[1]).Children.Count);
}
}
}
\ No newline at end of file
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs
===================================================================
diff -u -reec9f1ac3701c6155c49101fcc9649d51ffdc319 -r83a72354e69c186ca436bbe29e31122b9b8f4c3a
--- Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs (.../RingtoetsProjectTestHelper.cs) (revision eec9f1ac3701c6155c49101fcc9649d51ffdc319)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/RingtoetsProjectTestHelper.cs (.../RingtoetsProjectTestHelper.cs) (revision 83a72354e69c186ca436bbe29e31122b9b8f4c3a)
@@ -88,6 +88,7 @@
WaveImpactAsphaltCoverFailureMechanism waveImpactAsphaltCoverFailureMechanism = assessmentSection.WaveImpactAsphaltCover;
AddForeshoreProfiles(waveImpactAsphaltCoverFailureMechanism.ForeshoreProfiles);
+ ConfigureWaveImpactAsphaltCoverFailureMechanism(waveImpactAsphaltCoverFailureMechanism);
AddSections(waveImpactAsphaltCoverFailureMechanism);
SetSectionResults(waveImpactAsphaltCoverFailureMechanism.SectionResults);
@@ -377,6 +378,18 @@
});
}
+ private static void ConfigureWaveImpactAsphaltCoverFailureMechanism(WaveImpactAsphaltCoverFailureMechanism failureMechanism)
+ {
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(new CalculationGroup
+ {
+ Name = "GCEO A",
+ });
+ failureMechanism.WaveConditionsCalculationGroup.Children.Add(new CalculationGroup
+ {
+ Name = "GCEO A"
+ });
+ }
+
private static void ConfigureStabilityStoneCoverFailureMechanism(StabilityStoneCoverFailureMechanism failureMechanism, IAssessmentSection assessmentSection)
{
ForeshoreProfile foreshoreProfile = failureMechanism.ForeshoreProfiles[0];