Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs =================================================================== diff -u -r97018b4e8e9cd81438e8fd0d111d889e20946617 -rb610d57f72acd9222a40ad4a3215c4f0072bfcb1 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs (.../CalculationGroupEntityReadExtentionsTest.cs) (revision 97018b4e8e9cd81438e8fd0d111d889e20946617) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/CalculationGroupEntityReadExtentionsTest.cs (.../CalculationGroupEntityReadExtentionsTest.cs) (revision b610d57f72acd9222a40ad4a3215c4f0072bfcb1) @@ -34,29 +34,29 @@ public class CalculationGroupEntityReadExtentionsTest { [Test] - public void ReadPipingCalculationGroup_ReadConversionCollectorIsNull_ThrowArgumentNullException() + public void ReadAsPipingCalculationGroup_ReadConversionCollectorIsNull_ThrowArgumentNullException() { // Setup var entity = new CalculationGroupEntity(); var generalPipingInput = new GeneralPipingInput(); // Call - TestDelegate call = () => entity.ReadPipingCalculationGroup(null, generalPipingInput); + TestDelegate call = () => entity.ReadAsPipingCalculationGroup(null, generalPipingInput); // Assert string paramName = Assert.Throws(call).ParamName; Assert.AreEqual("collector", paramName); } [Test] - public void ReadPipingCalculationGroup_GeneralPipingInputIsNull_ThrowArgumentNullException() + public void ReadAsPipingCalculationGroup_GeneralPipingInputIsNull_ThrowArgumentNullException() { // Setup var entity = new CalculationGroupEntity(); var collector = new ReadConversionCollector(); // Call - TestDelegate call = () => entity.ReadPipingCalculationGroup(collector, null); + TestDelegate call = () => entity.ReadAsPipingCalculationGroup(collector, null); // Assert string paramName = Assert.Throws(call).ParamName; @@ -66,7 +66,7 @@ [Test] [TestCase("A", 1)] [TestCase("b", 0)] - public void ReadPipingCalculationGroup_EntityWithoutChildren_CreateCalculationGroupWithoutChildren( + public void ReadAsPipingCalculationGroup_EntityWithoutChildren_CreateCalculationGroupWithoutChildren( string name, byte isEditable) { // Setup @@ -80,7 +80,7 @@ var generalPipingInput = new GeneralPipingInput(); // Call - CalculationGroup group = entity.ReadPipingCalculationGroup(collector, generalPipingInput); + CalculationGroup group = entity.ReadAsPipingCalculationGroup(collector, generalPipingInput); // Assert Assert.AreEqual(name, group.Name); @@ -89,7 +89,7 @@ } [Test] - public void ReadPipingCalculationGroup_EntityWithChildGroups_CreateCalculationGroupWithChildGroups() + public void ReadAsPipingCalculationGroup_EntityWithChildGroups_CreateCalculationGroupWithChildGroups() { // Setup var rootGroupEntity = new CalculationGroupEntity @@ -131,7 +131,7 @@ var generalPipingInput = new GeneralPipingInput(); // Call - var rootGroup = rootGroupEntity.ReadPipingCalculationGroup(collector, generalPipingInput); + var rootGroup = rootGroupEntity.ReadAsPipingCalculationGroup(collector, generalPipingInput); // Assert Assert.AreEqual("A", rootGroup.Name); @@ -158,7 +158,7 @@ } [Test] - public void ReadPipingCalculationGroup_EntityWithChildPipingCalculations_CreateCalculationGroupWithChildCalculations() + public void ReadAsPipingCalculationGroup_EntityWithChildPipingCalculations_CreateCalculationGroupWithChildCalculations() { // Setup var rootGroupEntity = new CalculationGroupEntity @@ -185,7 +185,7 @@ var generalPipingInput = new GeneralPipingInput(); // Call - var rootGroup = rootGroupEntity.ReadPipingCalculationGroup(collector, generalPipingInput); + var rootGroup = rootGroupEntity.ReadAsPipingCalculationGroup(collector, generalPipingInput); // Assert ICalculationBase[] rootChildren = rootGroup.Children.ToArray(); @@ -199,7 +199,7 @@ } [Test] - public void ReadPipingCalculationGroup_EntityWithChildPipingCalculationsAndGroups_CreateCalculationGroupWithChildCalculationsAndGroups() + public void ReadAsPipingCalculationGroup_EntityWithChildPipingCalculationsAndGroups_CreateCalculationGroupWithChildCalculationsAndGroups() { // Setup var rootGroupEntity = new CalculationGroupEntity @@ -239,7 +239,7 @@ var generalPipingInput = new GeneralPipingInput(); // Call - var rootGroup = rootGroupEntity.ReadPipingCalculationGroup(collector, generalPipingInput); + var rootGroup = rootGroupEntity.ReadAsPipingCalculationGroup(collector, generalPipingInput); // Assert ICalculationBase[] rootChildren = rootGroup.Children.ToArray(); @@ -458,5 +458,111 @@ var rootChildGroup2 = (CalculationGroup) rootChildren[3]; Assert.AreEqual("group2", rootChildGroup2.Name); } + + [Test] + public void ReadAsGrassCoverErosionOutwardsCalculationGroup_CollectorIsNull_ThrowArgumentNullException() + { + // Setup + var entity = new CalculationGroupEntity(); + + // Call + TestDelegate call = () => entity.ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup(null); + + // Assert + string paramName = Assert.Throws(call).ParamName; + Assert.AreEqual("collector", paramName); + } + + [Test] + [TestCase("HAbba", 1)] + [TestCase("Dooeis", 0)] + public void ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup_EntityWithoutChildren_CreateCalculationGroupWithoutChildren( + string name, byte isEditable) + { + // Setup + var entity = new CalculationGroupEntity + { + Name = name, + IsEditable = isEditable + }; + + var collector = new ReadConversionCollector(); + + // Call + CalculationGroup group = entity.ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup(collector); + + // Assert + Assert.AreEqual(name, group.Name); + Assert.AreEqual(Convert.ToBoolean(isEditable), group.IsNameEditable); + CollectionAssert.IsEmpty(group.Children); + } + + [Test] + public void ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup_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.ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup(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