Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs
===================================================================
diff -u -r5076e379f409c3b5ba41eb98256e3dd5d140571c -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs (.../PipingData.cs) (revision 5076e379f409c3b5ba41eb98256e3dd5d140571c)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingData.cs (.../PipingData.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -194,6 +194,14 @@
///
public PipingOutput Output { get; set; }
+ ///
+ /// Clears the .
+ ///
+ public void ClearOutput()
+ {
+ Output = null;
+ }
+
public void Attach(IObserver observer)
{
observers.Add(observer);
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs
===================================================================
diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs (.../PipingCalculationInputsNodePresenter.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingCalculationInputsNodePresenter.cs (.../PipingCalculationInputsNodePresenter.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -44,10 +44,10 @@
public IEnumerable GetChildNodeObjects(object parentNodeData, ITreeNode node)
{
- var pipingData = ((PipingCalculationInputs) parentNodeData).PipingData.Output;
- if (pipingData != null)
+ var pipingOutput = ((PipingCalculationInputs) parentNodeData).PipingData.Output;
+ if (pipingOutput != null)
{
- yield return pipingData;
+ yield return pipingOutput;
}
}
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingOutputNodePresenter.cs
===================================================================
diff -u -r8df04aa7166563cc67a1b7e70f9f4b8867e454b7 -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingOutputNodePresenter.cs (.../PipingOutputNodePresenter.cs) (revision 8df04aa7166563cc67a1b7e70f9f4b8867e454b7)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/NodePresenters/PipingOutputNodePresenter.cs (.../PipingOutputNodePresenter.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -1,91 +1,31 @@
-using System;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-using Core.Common.Controls;
-using Core.Common.Utils.Collections;
+using Core.Common.Controls;
using Ringtoets.Piping.Data;
-
+using Ringtoets.Piping.Forms.PresentationObjects;
using Ringtoets.Piping.Forms.Properties;
namespace Ringtoets.Piping.Forms.NodePresenters
{
- public class PipingOutputNodePresenter : ITreeNodePresenter
+ public class PipingOutputNodePresenter : PipingNodePresenterBase
{
- public ITreeView TreeView { get; set; }
-
- public Type NodeTagType
+ protected override void UpdateNode(ITreeNode parentNode, ITreeNode node, PipingOutput nodeData)
{
- get
- {
- return typeof(PipingOutput);
- }
- }
-
- public void UpdateNode(ITreeNode parentNode, ITreeNode node, object nodeData)
- {
node.Text = Resources.PipingOutput_DisplayName;
node.Image = Resources.PipingIcon;
}
- public IEnumerable GetChildNodeObjects(object parentNodeData, ITreeNode node)
+ protected override bool CanRemove(object parentNodeData, PipingOutput nodeData)
{
- yield break;
+ return true;
}
- public bool CanRenameNode(ITreeNode node)
+ protected override bool RemoveNodeData(object parentNodeData, PipingOutput nodeData)
{
- return false;
- }
+ var pipingCalculationInputs = (PipingCalculationInputs)parentNodeData;
- public bool CanRenameNodeTo(ITreeNode node, string newName)
- {
- return false;
- }
+ pipingCalculationInputs.ClearOutput();
+ pipingCalculationInputs.NotifyObservers();
- public void OnNodeRenamed(object nodeData, string newName)
- {
- throw new InvalidOperationException(string.Format("Cannot rename tree node of type {0}.", GetType().Name));
+ return true;
}
-
- public void OnNodeChecked(ITreeNode node) {}
-
- public DragOperations CanDrag(object nodeData)
- {
- return DragOperations.None;
- }
-
- public DragOperations CanDrop(object item, ITreeNode sourceNode, ITreeNode targetNode, DragOperations validOperations)
- {
- return DragOperations.None;
- }
-
- public bool CanInsert(object item, ITreeNode sourceNode, ITreeNode targetNode)
- {
- return false;
- }
-
- public void OnDragDrop(object item, object sourceParentNodeData, object targetParentNodeData, DragOperations operation, int position) {}
-
- public void OnNodeSelected(object nodeData) {}
-
- public ContextMenuStrip GetContextMenu(ITreeNode sender, object nodeData)
- {
- return null;
- }
-
- public void OnPropertyChanged(object sender, ITreeNode node, PropertyChangedEventArgs e) {}
-
- public void OnCollectionChanged(object sender, NotifyCollectionChangingEventArgs e) {}
-
- public bool CanRemove(object parentNodeData, object nodeData)
- {
- return false;
- }
-
- public bool RemoveNodeData(object parentNodeData, object nodeData)
- {
- throw new InvalidOperationException(String.Format("Cannot delete node of type {0}.", GetType().Name));
- }
}
}
\ No newline at end of file
Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingCalculationInputs.cs
===================================================================
diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingCalculationInputs.cs (.../PipingCalculationInputs.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/PresentationObjects/PipingCalculationInputs.cs (.../PipingCalculationInputs.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -55,5 +55,13 @@
}
#endregion
+
+ ///
+ /// Clears the output of the .
+ ///
+ public void ClearOutput()
+ {
+ PipingData.ClearOutput();
+ }
}
}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs
===================================================================
diff -u -r5076e379f409c3b5ba41eb98256e3dd5d140571c -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs (.../PipingDataTest.cs) (revision 5076e379f409c3b5ba41eb98256e3dd5d140571c)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingDataTest.cs (.../PipingDataTest.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -1,7 +1,7 @@
using Core.Common.Base;
using NUnit.Framework;
using Rhino.Mocks;
-
+using Ringtoets.Piping.Calculation.TestUtil;
using Ringtoets.Piping.Data.Probabilistics;
namespace Ringtoets.Piping.Data.Test
@@ -157,5 +157,21 @@
// Call & Assert
pipingData.Detach(observer);
}
+
+ [Test]
+ public void ClearOutput_Always_SetsOutputToNull()
+ {
+ // Setup
+ var data = new PipingData
+ {
+ Output = new TestPipingOutput()
+ };
+
+ // Call
+ data.ClearOutput();
+
+ // Assert
+ Assert.IsNull(data.Output);
+ }
}
}
\ No newline at end of file
Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj
===================================================================
diff -u -r602479eb3666493485aee246d56b08958a6fc958 -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj (.../Ringtoets.Piping.Data.Test.csproj) (revision 602479eb3666493485aee246d56b08958a6fc958)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/Ringtoets.Piping.Data.Test.csproj (.../Ringtoets.Piping.Data.Test.csproj) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -78,6 +78,10 @@
{ce994cc9-6f6a-48ac-b4be-02c30a21f4db}
Ringtoets.Piping.Data
+
+ {27E0A5C9-3ABF-426A-A3DA-7D0B83A218C8}
+ Ringtoets.Piping.Calculation.TestUtil
+
{955E574D-67CE-4347-AA6B-7DF8A04ED754}
Ringtoets.Piping.Data.TestUtil
Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingOutputNodePresenterTest.cs
===================================================================
diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -r78aece3188a23a908e7c0a47e53e5facd1c7edb5
--- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingOutputNodePresenterTest.cs (.../PipingOutputNodePresenterTest.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b)
+++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingOutputNodePresenterTest.cs (.../PipingOutputNodePresenterTest.cs) (revision 78aece3188a23a908e7c0a47e53e5facd1c7edb5)
@@ -5,10 +5,11 @@
using Core.Common.Utils.Collections;
using NUnit.Framework;
using Rhino.Mocks;
-
+using Ringtoets.Piping.Calculation.TestUtil;
using Ringtoets.Piping.Data;
using Ringtoets.Piping.Forms.NodePresenters;
+using Ringtoets.Piping.Forms.PresentationObjects;
using Ringtoets.Piping.Forms.Test.Helper;
using WtiFormsResources = Ringtoets.Piping.Forms.Properties.Resources;
@@ -53,280 +54,130 @@
}
[Test]
- public void GetChildNodeObjects_Always_ReturnNoChildNodes()
+ public void GetContextMenu_Always_ReturnsNull()
{
// Setup
var mocks = new MockRepository();
var nodeMock = mocks.StrictMock();
- mocks.ReplayAll();
-
- var nodePresenter = new PipingOutputNodePresenter();
-
- var output = PipingOutputCreator.Create();
-
- // Call
- var children = nodePresenter.GetChildNodeObjects(output, nodeMock);
-
- // Assert
- Assert.AreEqual(0, children.Count());
- mocks.VerifyAll(); // Expect no calls on tree node
- }
-
- [Test]
- public void CanRenameNode_Always_ReturnFalse()
- {
- // Setup
- var mocks = new MockRepository();
- var nodeMock = mocks.StrictMock();
- mocks.ReplayAll();
-
- var nodePresenter = new PipingOutputNodePresenter();
-
- // Call
- var renameAllowed = nodePresenter.CanRenameNode(nodeMock);
-
- // Assert
- Assert.IsFalse(renameAllowed);
- mocks.VerifyAll(); // Expect no calls on tree node
- }
-
- [Test]
- public void CanRenameNodeTo_Always_ReturnFalse()
- {
- // Setup
- var mocks = new MockRepository();
- var nodeMock = mocks.StrictMock();
- mocks.ReplayAll();
-
- var nodePresenter = new PipingOutputNodePresenter();
-
- // Call
- var renameAllowed = nodePresenter.CanRenameNodeTo(nodeMock, "");
-
- // Assert
- Assert.IsFalse(renameAllowed);
- mocks.VerifyAll(); // Expect no calls on tree node
- }
-
- [Test]
- public void OnNodeRenamed_Always_ThrowInvalidOperationException()
- {
- // Setup
- var mocks = new MockRepository();
- var nodeMock = mocks.StrictMock();
- mocks.ReplayAll();
-
- var nodePresenter = new PipingOutputNodePresenter();
-
- // Call
- TestDelegate call = () => { nodePresenter.OnNodeRenamed(nodeMock, ""); };
-
- // Assert
- var exception = Assert.Throws(call);
- var expectedMessage = string.Format("Cannot rename tree node of type {0}.", nodePresenter.GetType().Name);
- Assert.AreEqual(expectedMessage, exception.Message);
- mocks.VerifyAll(); // Expect no calls on tree node
- }
-
- [Test]
- public void OnNodeChecked_Always_DoNothing()
- {
- // Setup
- var mocks = new MockRepository();
- var nodeMock = mocks.StrictMock();
- mocks.ReplayAll();
-
- var nodePresenter = new PipingOutputNodePresenter();
-
- // Call
- nodePresenter.OnNodeChecked(nodeMock);
-
- // Assert
- mocks.VerifyAll(); // Expect no calls on tree node
- }
-
- [Test]
- public void CanDrag_Always_ReturnNone()
- {
- // Setup
- var mocks = new MockRepository();
var dataMock = mocks.StrictMock