Index: Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs
===================================================================
diff -u -r31b9794f47ec6d8f8debb5d1b558782853cb7c26 -r9a163773601ac59d2e4dbdf245e074a38c21a866
--- Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 31b9794f47ec6d8f8debb5d1b558782853cb7c26)
+++ Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 9a163773601ac59d2e4dbdf245e074a38c21a866)
@@ -905,7 +905,7 @@
}
///
- /// Looks up a localized string similar to Faalkansruimte (per jaar) [-].
+ /// Looks up a localized string similar to Faalkansruimte [1/jaar].
///
public static string FailureMechanismContributionView_GridColumn_ProbabilitySpace {
get {
Index: Core/Common/src/Core.Common.Gui/Properties/Resources.resx
===================================================================
diff -u -r31b9794f47ec6d8f8debb5d1b558782853cb7c26 -r9a163773601ac59d2e4dbdf245e074a38c21a866
--- Core/Common/src/Core.Common.Gui/Properties/Resources.resx (.../Resources.resx) (revision 31b9794f47ec6d8f8debb5d1b558782853cb7c26)
+++ Core/Common/src/Core.Common.Gui/Properties/Resources.resx (.../Resources.resx) (revision 9a163773601ac59d2e4dbdf245e074a38c21a866)
@@ -911,7 +911,7 @@
..\Resources\OptionsHS.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
- Faalkansruimte (per jaar) [-]
+ Faalkansruimte [1/jaar]
Toegestane bijdrage aan faalkans [%]
Index: Ringtoets/Integration/src/Ringtoets.Integration.Forms/NodePresenters/FailureMechanismContributionNodePresenter.cs
===================================================================
diff -u -r75aa4fefacf584d5172dc3bdffd348b0aacb05a4 -r9a163773601ac59d2e4dbdf245e074a38c21a866
--- Ringtoets/Integration/src/Ringtoets.Integration.Forms/NodePresenters/FailureMechanismContributionNodePresenter.cs (.../FailureMechanismContributionNodePresenter.cs) (revision 75aa4fefacf584d5172dc3bdffd348b0aacb05a4)
+++ Ringtoets/Integration/src/Ringtoets.Integration.Forms/NodePresenters/FailureMechanismContributionNodePresenter.cs (.../FailureMechanismContributionNodePresenter.cs) (revision 9a163773601ac59d2e4dbdf245e074a38c21a866)
@@ -1,8 +1,8 @@
-using System.Windows.Forms;
+using System.Drawing;
+using System.Windows.Forms;
using Core.Common.Controls.Swf.TreeViewControls;
using Core.Common.Gui;
using Ringtoets.Common.Forms.NodePresenters;
-using Ringtoets.Integration.Data;
using Ringtoets.Integration.Data.Contribution;
using Ringtoets.Integration.Forms.Properties;
@@ -15,6 +15,7 @@
protected override void UpdateNode(ITreeNode parentNode, ITreeNode node, FailureMechanismContribution nodeData)
{
node.Text = Data.Properties.Resources.FailureMechanismContribution_DisplayName;
+ node.ForegroundColor = Color.FromKnownColor(KnownColor.ControlText);
node.Image = Resources.GenericInputOutputIcon;
}
@@ -23,6 +24,8 @@
return contextMenuBuilderProvider
.Get(node)
.AddOpenItem()
+ .AddSeparator()
+ .AddExportItem()
.Build();
}
}
Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/NodePresenters/FailureMechanismContributionNodePresenterTest.cs
===================================================================
diff -u
--- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/NodePresenters/FailureMechanismContributionNodePresenterTest.cs (revision 0)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/NodePresenters/FailureMechanismContributionNodePresenterTest.cs (revision 9a163773601ac59d2e4dbdf245e074a38c21a866)
@@ -0,0 +1,106 @@
+using System;
+using System.Drawing;
+using Core.Common.Controls.Swf.TreeViewControls;
+using Core.Common.Gui;
+using Core.Common.Gui.ContextMenu;
+using Core.Common.Gui.Properties;
+using Core.Common.TestUtil;
+using NUnit.Framework;
+using Rhino.Mocks;
+using Ringtoets.Common.Data;
+using Ringtoets.Integration.Data.Contribution;
+using Ringtoets.Integration.Forms.NodePresenters;
+
+namespace Ringtoets.Integration.Forms.Test.NodePresenters
+{
+ [TestFixture]
+ public class FailureMechanismContributionNodePresenterTest
+ {
+ private MockRepository mockRepository;
+
+ [SetUp]
+ public void SetUp()
+ {
+ mockRepository = new MockRepository();
+ }
+
+ [Test]
+ public void Constructor_NoMenuBuilderProvider_ArgumentNullException()
+ {
+ // Call
+ TestDelegate test = () => new FailureMechanismContributionNodePresenter(null);
+
+ // Assert
+ var message = Assert.Throws(test).Message;
+ StringAssert.StartsWith(Resources.NodePresenter_ContextMenuBuilderProvider_required, message);
+ StringAssert.EndsWith("contextMenuBuilderProvider", message);
+ }
+
+ [Test]
+ public void Constructor_WithParamsSet_NewInstance()
+ {
+ // Setup
+ var contextMenuBuilderProviderMock = mockRepository.StrictMock();
+
+ mockRepository.ReplayAll();
+
+ // Call
+ var nodePresenter = new FailureMechanismContributionNodePresenter(contextMenuBuilderProviderMock);
+
+ // Assert
+ Assert.IsInstanceOf(nodePresenter);
+ Assert.IsNull(nodePresenter.TreeView);
+ Assert.AreEqual(typeof(FailureMechanismContribution), nodePresenter.NodeTagType);
+
+ mockRepository.VerifyAll();
+ }
+
+ [Test]
+ public void UpdateNode_WithData_InitializeNode()
+ {
+ // Setup
+ var projectNode = mockRepository.Stub();
+ var assessmentSection = mockRepository.Stub(new IFailureMechanism[] { }, 0, 0);
+ var contextMenuBuilderProviderMock = mockRepository.StrictMock();
+
+ mockRepository.ReplayAll();
+
+ var nodePresenter = new FailureMechanismContributionNodePresenter(contextMenuBuilderProviderMock);
+
+ // Call
+ nodePresenter.UpdateNode(null, projectNode, assessmentSection);
+
+ // Assert
+ Assert.AreEqual(Data.Properties.Resources.FailureMechanismContribution_DisplayName, projectNode.Text);
+ Assert.AreEqual(Color.FromKnownColor(KnownColor.ControlText), projectNode.ForegroundColor);
+ TestHelper.AssertImagesAreEqual(Properties.Resources.GenericInputOutputIcon, projectNode.Image);
+ }
+
+ [Test]
+ public void GetContextMenu_Always_CallsContextMenuBuilderMethods()
+ {
+ // Setup
+ var contextMenuBuilderProviderMock = mockRepository.StrictMock();
+ var assessmentSection = mockRepository.Stub(new IFailureMechanism[] { }, 0, 0);
+ var menuBuilderMock = mockRepository.StrictMock();
+ var nodeMock = mockRepository.StrictMock();
+
+ menuBuilderMock.Expect(mb => mb.AddOpenItem()).Return(menuBuilderMock);
+ menuBuilderMock.Expect(mb => mb.AddSeparator()).Return(menuBuilderMock);
+ menuBuilderMock.Expect(mb => mb.AddExportItem()).Return(menuBuilderMock);
+ menuBuilderMock.Expect(mb => mb.Build()).Return(null);
+
+ contextMenuBuilderProviderMock.Expect(cmp => cmp.Get(nodeMock)).Return(menuBuilderMock);
+
+ mockRepository.ReplayAll();
+
+ var nodePresenter = new FailureMechanismContributionNodePresenter(contextMenuBuilderProviderMock);
+
+ // Call
+ nodePresenter.GetContextMenu(nodeMock, assessmentSection);
+
+ // Assert
+ mockRepository.VerifyAll();
+ }
+ }
+}
\ No newline at end of file
Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj
===================================================================
diff -u -r9f57710e6e75471cc3d44e55e514c48909b19dc4 -r9a163773601ac59d2e4dbdf245e074a38c21a866
--- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj (.../Ringtoets.Integration.Forms.Test.csproj) (revision 9f57710e6e75471cc3d44e55e514c48909b19dc4)
+++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/Ringtoets.Integration.Forms.Test.csproj (.../Ringtoets.Integration.Forms.Test.csproj) (revision 9a163773601ac59d2e4dbdf245e074a38c21a866)
@@ -59,6 +59,7 @@
+