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];