Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PresentationObjects/ClosingStructuresInputContext.cs =================================================================== diff -u --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PresentationObjects/ClosingStructuresInputContext.cs (revision 0) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/PresentationObjects/ClosingStructuresInputContext.cs (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -0,0 +1,46 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using Ringtoets.ClosingStructures.Data; +using Ringtoets.Common.Data.AssessmentSection; + +namespace Ringtoets.ClosingStructures.Forms.PresentationObjects +{ + /// + /// Presentation object for all data required to configure an instance of + /// in order to be able to configure height structures calculations. + /// + public class ClosingStructuresInputContext : ClosingStructuresContextBase + { + /// + /// Creates a new instance of . + /// + /// The height structures input instance wrapped by this context object. + /// The failure mechanism which the context belongs to. + /// The assessment section which the context belongs to. + /// When any input argument is null. + public ClosingStructuresInputContext(ClosingStructuresInput input, + ClosingStructuresFailureMechanism failureMechanism, + IAssessmentSection assessmentSection) + : base(input, failureMechanism, assessmentSection) {} + } +} \ No newline at end of file Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.Designer.cs =================================================================== diff -u -r8587508c66a1bc0938465e97cf365cc1ef254f53 -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 8587508c66a1bc0938465e97cf365cc1ef254f53) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -22,7 +22,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.42000 +// Runtime Version:4.0.30319.17929 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -89,5 +89,14 @@ return ResourceManager.GetString("ClosingStructuresContextBase_DataDescription_ClosingStructuresFailureMechanism", resourceCulture); } } + + /// + /// Looks up a localized string similar to Invoer. + /// + public static string ClosingStructuresInputContext_NodeDisplayName { + get { + return ResourceManager.GetString("ClosingStructuresInputContext_NodeDisplayName", resourceCulture); + } + } } } Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.resx =================================================================== diff -u -r8587508c66a1bc0938465e97cf365cc1ef254f53 -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.resx (.../Resources.resx) (revision 8587508c66a1bc0938465e97cf365cc1ef254f53) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Properties/Resources.resx (.../Resources.resx) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -120,4 +120,7 @@ Het sluitings kunstwerk toetsspoor + + Invoer + \ No newline at end of file Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Ringtoets.ClosingStructures.Forms.csproj =================================================================== diff -u -r9214f74184b5923e0fb04b86d50c5bf8e5e57cdc -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Ringtoets.ClosingStructures.Forms.csproj (.../Ringtoets.ClosingStructures.Forms.csproj) (revision 9214f74184b5923e0fb04b86d50c5bf8e5e57cdc) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Forms/Ringtoets.ClosingStructures.Forms.csproj (.../Ringtoets.ClosingStructures.Forms.csproj) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -46,6 +46,7 @@ + True Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Plugin/ClosingStructuresPlugin.cs =================================================================== diff -u -r9214f74184b5923e0fb04b86d50c5bf8e5e57cdc -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Plugin/ClosingStructuresPlugin.cs (.../ClosingStructuresPlugin.cs) (revision 9214f74184b5923e0fb04b86d50c5bf8e5e57cdc) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.Plugin/ClosingStructuresPlugin.cs (.../ClosingStructuresPlugin.cs) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -33,12 +33,14 @@ using Ringtoets.Common.Data; using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Calculation; +using Ringtoets.Common.Data.Probability; using Ringtoets.Common.Forms.Helpers; using Ringtoets.Common.Forms.PresentationObjects; using Ringtoets.Common.Forms.TreeNodeInfos; using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources; using RingtoetsCommonIOResources = Ringtoets.Common.IO.Properties.Resources; using ClosingStructuresDataResources = Ringtoets.ClosingStructures.Data.Properties.Resources; +using ClosingStructuresFormsResources = Ringtoets.ClosingStructures.Forms.Properties.Resources; namespace Ringtoets.ClosingStructures.Plugin { @@ -76,9 +78,9 @@ CalculationGroupContextOnNodeRemoved); yield return RingtoetsTreeNodeInfoFactory.CreateCalculationContextTreeNodeInfo( - null, - null, - null); + CalculationContextChildNodeObjects, + CalculationContextContextMenuStrip, + CalculationContextOnNodeRemoved); yield return new TreeNodeInfo> { @@ -89,7 +91,7 @@ .Build() }; - yield return new TreeNodeInfo() + yield return new TreeNodeInfo { Text = context => RingtoetsCommonFormsResources.StructuresCollection_DisplayName, Image = context => RingtoetsCommonFormsResources.GeneralFolderIcon, @@ -102,6 +104,15 @@ .AddCollapseAllItem() .Build() }; + + yield return new TreeNodeInfo + { + Text = inputContext => ClosingStructuresFormsResources.ClosingStructuresInputContext_NodeDisplayName, + Image = inputContext => RingtoetsCommonFormsResources.GenericInputOutputIcon, + ContextMenuStrip = (nodeData, parentData, treeViewControl) => Gui.Get(nodeData, treeViewControl) + .AddPropertiesItem() + .Build() + }; } public override IEnumerable GetImportInfos() @@ -318,7 +329,7 @@ CalculateAll(context.FailureMechanism, group.GetCalculations().OfType()); } - private void AddCalculation(ClosingStructuresCalculationGroupContext context) + private static void AddCalculation(ClosingStructuresCalculationGroupContext context) { var calculation = new ClosingStructuresCalculation { @@ -338,8 +349,43 @@ #endregion + #region ClosingStructuresCalculationContext TreeNodeInfo + + private static object[] CalculationContextChildNodeObjects(ClosingStructuresCalculationContext context) + { + var childNodes = new List + { + new CommentContext(context.WrappedData), + new ClosingStructuresInputContext(context.WrappedData.InputParameters, + context.FailureMechanism, + context.AssessmentSection) + }; + + if (context.WrappedData.HasOutput) + { + childNodes.Add(context.WrappedData.Output); + } + else + { + childNodes.Add(new EmptyProbabilityAssessmentOutput()); + } + + return childNodes.ToArray(); + } + + private static ContextMenuStrip CalculationContextContextMenuStrip(ClosingStructuresCalculationContext closingStructuresCalculationContext, object o, TreeViewControl arg3) + { + return new ContextMenuStrip(); + } + + private static void CalculationContextOnNodeRemoved(ClosingStructuresCalculationContext arg1, object arg2) + { + } + #endregion + #endregion + private static string ValidateAllDataAvailableAndGetErrorMessage(IAssessmentSection assessmentSection, ClosingStructuresFailureMechanism failureMechanism) { //Check for database connection/part of a validation issue - currently a placeholder Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresInputContextTest.cs =================================================================== diff -u --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresInputContextTest.cs (revision 0) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresInputContextTest.cs (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -0,0 +1,55 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using NUnit.Framework; +using Rhino.Mocks; +using Ringtoets.ClosingStructures.Data; +using Ringtoets.ClosingStructures.Forms.PresentationObjects; +using Ringtoets.Common.Data.AssessmentSection; + +namespace Ringtoets.ClosingStructures.Forms.Test.PresentationObjects +{ + [TestFixture] + public class ClosingStructuresInputContextTest + { + [Test] + public void Constructor_ExpectedValues() + { + // Setup + var mocks = new MockRepository(); + var assessmentSectionMock = mocks.Stub(); + mocks.ReplayAll(); + + var input = new ClosingStructuresInput(); + var failureMechanism = new ClosingStructuresFailureMechanism(); + + // Call + var context = new ClosingStructuresInputContext(input, failureMechanism, assessmentSectionMock); + + // Assert + Assert.IsInstanceOf>(context); + Assert.AreEqual(input, context.WrappedData); + Assert.AreEqual(failureMechanism, context.FailureMechanism); + Assert.AreEqual(assessmentSectionMock, context.AssessmentSection); + mocks.VerifyAll(); + } + } +} \ No newline at end of file Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Ringtoets.ClosingStructures.Forms.Test.csproj =================================================================== diff -u -r9214f74184b5923e0fb04b86d50c5bf8e5e57cdc -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Ringtoets.ClosingStructures.Forms.Test.csproj (.../Ringtoets.ClosingStructures.Forms.Test.csproj) (revision 9214f74184b5923e0fb04b86d50c5bf8e5e57cdc) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/Ringtoets.ClosingStructures.Forms.Test.csproj (.../Ringtoets.ClosingStructures.Forms.Test.csproj) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -63,12 +63,14 @@ + + Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresCalculationContextTreeNodeInfoTest.cs =================================================================== diff -u -r9214f74184b5923e0fb04b86d50c5bf8e5e57cdc -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresCalculationContextTreeNodeInfoTest.cs (.../ClosingStructuresCalculationContextTreeNodeInfoTest.cs) (revision 9214f74184b5923e0fb04b86d50c5bf8e5e57cdc) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresCalculationContextTreeNodeInfoTest.cs (.../ClosingStructuresCalculationContextTreeNodeInfoTest.cs) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -22,10 +22,17 @@ using System.Linq; using Core.Common.Controls.TreeView; using Core.Common.Gui; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; +using Ringtoets.ClosingStructures.Data; using Ringtoets.ClosingStructures.Forms.PresentationObjects; using Ringtoets.ClosingStructures.Plugin; +using Ringtoets.Common.Data; +using Ringtoets.Common.Data.AssessmentSection; +using Ringtoets.Common.Data.Probability; +using Ringtoets.Common.Forms.PresentationObjects; +using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources; namespace Ringtoets.ClosingStructures.Forms.Test.TreeNodeInfos { @@ -56,5 +63,110 @@ plugin.Dispose(); mocks.VerifyAll(); } + + [Test] + public void Initialized_Always_ExpectedPropertiesSet() + { + // Setup + mocks.ReplayAll(); + + // Assert + Assert.AreEqual(typeof(ClosingStructuresCalculationContext), info.TagType); + Assert.IsNotNull(info.Text); + Assert.IsNotNull(info.Image); + Assert.IsNotNull(info.EnsureVisibleOnCreate); + Assert.IsNotNull(info.ChildNodeObjects); + Assert.IsNotNull(info.ContextMenuStrip); + Assert.IsNotNull(info.CanRename); + Assert.IsNotNull(info.OnNodeRenamed); + Assert.IsNotNull(info.CanRemove); + Assert.IsNotNull(info.OnNodeRemoved); + Assert.IsNotNull(info.CanDrag); + Assert.IsNull(info.ForeColor); + Assert.IsNull(info.CanCheck); + Assert.IsNull(info.IsChecked); + Assert.IsNull(info.OnNodeChecked); + Assert.IsNull(info.CanDrop); + Assert.IsNull(info.CanInsert); + Assert.IsNull(info.OnDrop); + } + + [Test] + public void Image_Always_ReturnsCalculationIcon() + { + // Setup + mocks.ReplayAll(); + + // Call + var image = info.Image(null); + + // Assert + TestHelper.AssertImagesAreEqual(RingtoetsCommonFormsResources.CalculationIcon, image); + } + + [Test] + public void ChildNodeObjects_CalculationWithoutOutput_ReturnCollectionWithEmptyOutputObject() + { + var assessmentSectionMock = mocks.Stub(); + mocks.ReplayAll(); + + var failureMechanism = new ClosingStructuresFailureMechanism(); + var calculation = new ClosingStructuresCalculation(); + var calculationContext = new ClosingStructuresCalculationContext(calculation, failureMechanism, assessmentSectionMock); + + // Call + var children = info.ChildNodeObjects(calculationContext).ToArray(); + + // Assert + Assert.AreEqual(3, children.Length); + + var commentContext = children[0] as CommentContext; + Assert.IsNotNull(commentContext); + Assert.AreSame(calculationContext.WrappedData, commentContext.WrappedData); + + var ClosingStructuresInputContext = children[1] as ClosingStructuresInputContext; + Assert.IsNotNull(ClosingStructuresInputContext); + Assert.AreSame(calculationContext.WrappedData.InputParameters, ClosingStructuresInputContext.WrappedData); + + var emptyOutput = children[2] as EmptyProbabilityAssessmentOutput; + Assert.IsNotNull(emptyOutput); + } + + [Test] + public void ChildNodeObjects_CalculationWithOutput_ReturnCollectionWithOutputObject() + { + var assessmentSectionMock = mocks.Stub(); + mocks.ReplayAll(); + + var failureMechanism = new ClosingStructuresFailureMechanism(); + var calculation = new ClosingStructuresCalculation + { + Output = new TestClosingStructuresOutput() + }; + + var calculationContext = new ClosingStructuresCalculationContext(calculation, failureMechanism, assessmentSectionMock); + + // Call + var children = info.ChildNodeObjects(calculationContext).ToArray(); + + // Assert + Assert.AreEqual(3, children.Length); + + var commentContext = children[0] as CommentContext; + Assert.IsNotNull(commentContext); + Assert.AreSame(calculationContext.WrappedData, commentContext.WrappedData); + + var ClosingStructuresInputContext = children[1] as ClosingStructuresInputContext; + Assert.IsNotNull(ClosingStructuresInputContext); + Assert.AreSame(calculationContext.WrappedData.InputParameters, ClosingStructuresInputContext.WrappedData); + + var output = children[2] as ProbabilityAssessmentOutput; + Assert.IsNotNull(output); + } + + private class TestClosingStructuresOutput : ProbabilityAssessmentOutput + { + public TestClosingStructuresOutput() : base(0, 0, 0, 0, 0) { } + } } } \ No newline at end of file Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresInputContextTreeNodeInfoTest.cs =================================================================== diff -u --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresInputContextTreeNodeInfoTest.cs (revision 0) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/TreeNodeInfos/ClosingStructuresInputContextTreeNodeInfoTest.cs (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -0,0 +1,149 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System.Linq; +using Core.Common.Controls.TreeView; +using Core.Common.Gui; +using Core.Common.Gui.ContextMenu; +using Core.Common.TestUtil; +using NUnit.Framework; +using Rhino.Mocks; +using Ringtoets.ClosingStructures.Data; +using Ringtoets.ClosingStructures.Forms.PresentationObjects; +using Ringtoets.ClosingStructures.Plugin; +using Ringtoets.Common.Data.AssessmentSection; +using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources; +using ClosingStructuresFormsResources = Ringtoets.ClosingStructures.Forms.Properties.Resources; + +namespace Ringtoets.ClosingStructures.Forms.Test.TreeNodeInfos +{ + [TestFixture] + public class ClosingStructuresInputContextTreeNodeInfoTest + { + private MockRepository mocks; + private ClosingStructuresPlugin plugin; + private TreeNodeInfo info; + + [SetUp] + public void SetUp() + { + mocks = new MockRepository(); + plugin = new ClosingStructuresPlugin(); + info = plugin.GetTreeNodeInfos().First(tni => tni.TagType == typeof(ClosingStructuresInputContext)); + } + + [TearDown] + public void TearDown() + { + plugin.Dispose(); + mocks.VerifyAll(); + } + + [Test] + public void Initialized_Always_ExpectedPropertiesSet() + { + // Setup + mocks.ReplayAll(); + + // Assert + Assert.AreEqual(typeof(ClosingStructuresInputContext), info.TagType); + Assert.IsNotNull(info.Text); + Assert.IsNotNull(info.Image); + Assert.IsNotNull(info.ContextMenuStrip); + Assert.IsNull(info.ForeColor); + Assert.IsNull(info.EnsureVisibleOnCreate); + Assert.IsNull(info.ChildNodeObjects); + Assert.IsNull(info.CanRename); + Assert.IsNull(info.OnNodeRenamed); + Assert.IsNull(info.CanRemove); + Assert.IsNull(info.OnNodeRemoved); + Assert.IsNull(info.CanCheck); + Assert.IsNull(info.IsChecked); + Assert.IsNull(info.OnNodeChecked); + Assert.IsNull(info.CanDrag); + Assert.IsNull(info.CanDrop); + Assert.IsNull(info.CanInsert); + Assert.IsNull(info.OnDrop); + } + + [Test] + public void Text_Always_ReturnsTextFromResource() + { + // Setup + var assessmentSectionMock = mocks.Stub(); + mocks.ReplayAll(); + + var context = new ClosingStructuresInputContext( + new ClosingStructuresInput(), + new ClosingStructuresFailureMechanism(), + assessmentSectionMock); + + // Call + var text = info.Text(context); + + // Assert + Assert.AreEqual(ClosingStructuresFormsResources.ClosingStructuresInputContext_NodeDisplayName, text); + } + + [Test] + public void Image_Always_ReturnsSetImage() + { + // Setup + var assessmentSectionMock = mocks.Stub(); + mocks.ReplayAll(); + + var context = new ClosingStructuresInputContext( + new ClosingStructuresInput(), + new ClosingStructuresFailureMechanism(), + assessmentSectionMock); + + // Call + var image = info.Image(context); + + // Assert + TestHelper.AssertImagesAreEqual(RingtoetsCommonFormsResources.GenericInputOutputIcon, image); + } + + [Test] + public void ContextMenuStrip_Always_CallsBuilderMethods() + { + // Setup + var guiMock = mocks.StrictMock(); + var menuBuilderMock = mocks.StrictMock(); + + using (var treeViewControl = new TreeViewControl()) + { + guiMock.Expect(g => g.Get(null, treeViewControl)).Return(menuBuilderMock); + + menuBuilderMock.Expect(mb => mb.AddPropertiesItem()).Return(menuBuilderMock); + menuBuilderMock.Expect(mb => mb.Build()).Return(null); + mocks.ReplayAll(); + + plugin.Gui = guiMock; + + // Call + info.ContextMenuStrip(null, null, treeViewControl); + } + // Assert + // Assert expectancies are called in TearDown() + } + } +} \ No newline at end of file Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Plugin.Test/ClosingStructuresPluginTest.cs =================================================================== diff -u -r9214f74184b5923e0fb04b86d50c5bf8e5e57cdc -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Plugin.Test/ClosingStructuresPluginTest.cs (.../ClosingStructuresPluginTest.cs) (revision 9214f74184b5923e0fb04b86d50c5bf8e5e57cdc) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Plugin.Test/ClosingStructuresPluginTest.cs (.../ClosingStructuresPluginTest.cs) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -57,12 +57,13 @@ TreeNodeInfo[] treeNodeInfos = plugin.GetTreeNodeInfos().ToArray(); // Assert - Assert.AreEqual(5, treeNodeInfos.Length); + Assert.AreEqual(6, treeNodeInfos.Length); Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(ClosingStructuresFailureMechanismContext))); Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(FailureMechanismSectionResultContext))); Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(ClosingStructuresContext))); Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(ClosingStructuresCalculationGroupContext))); Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(ClosingStructuresCalculationContext))); + Assert.IsTrue(treeNodeInfos.Any(tni => tni.TagType == typeof(ClosingStructuresInputContext))); } } Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs =================================================================== diff -u -rd689ea05c1014eb4d51b927e11eb6c48255f0a47 -ree5ab18ca7554ffb2ce9546dd72b341da59f0345 --- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs (.../PipingContext.cs) (revision d689ea05c1014eb4d51b927e11eb6c48255f0a47) +++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingContext.cs (.../PipingContext.cs) (revision ee5ab18ca7554ffb2ce9546dd72b341da59f0345) @@ -108,7 +108,7 @@ /// The stochastic soil models. /// The piping failure mechanism. /// The assessment section. - /// When any input parameter is null. + /// When any input parameter is null. private static void AssertInputsAreNotNull(object surfaceLines, object stochasticSoilModels, object pipingFailureMechanism, object assessmentSection) { if (surfaceLines == null)