Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/FailureMechanismPlaceholderTreeNodeInfoTest.cs =================================================================== diff -u -r3df200a3968f49aa1098764c284a7fafb2a14de4 -r330586b375b0f21f7aa9f650827ffe29572a2f03 --- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/FailureMechanismPlaceholderTreeNodeInfoTest.cs (.../FailureMechanismPlaceholderTreeNodeInfoTest.cs) (revision 3df200a3968f49aa1098764c284a7fafb2a14de4) +++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/TreeNodeInfos/FailureMechanismPlaceholderTreeNodeInfoTest.cs (.../FailureMechanismPlaceholderTreeNodeInfoTest.cs) (revision 330586b375b0f21f7aa9f650827ffe29572a2f03) @@ -229,7 +229,7 @@ } [Test] - public void ContextMenuStrip_Always_CallsContextMenuBuilderMethods() + public void ContextMenuStrip_FailureMechanismIsRelevant_CallsContextMenuBuilderMethods() { // Setup using (var treeView = new TreeViewControl()) @@ -276,12 +276,54 @@ } [Test] - public void ContextMenuStrip_Always_IsRelevantEnabledCalculateAllAndClearAllItemDisabled() + public void ContextMenuStrip_FailureMechanismIsNotRelevant_CallsContextMenuBuilderMethods() { // Setup using (var treeView = new TreeViewControl()) { + var failureMechanism = new FailureMechanismPlaceholder("A") + { + IsRelevant = false + }; var assessmentSection = mocks.Stub(); + var context = new FailureMechanismPlaceholderContext(failureMechanism, assessmentSection); + + var gui = mocks.StrictMock(); + var menuBuilderMock = mocks.StrictMock(); + + menuBuilderMock.Expect(mb => mb.AddCustomItem(null)).IgnoreArguments().Return(menuBuilderMock); + menuBuilderMock.Expect(mb => mb.AddSeparator()).Return(menuBuilderMock); + menuBuilderMock.Expect(mb => mb.AddExpandAllItem()).Return(menuBuilderMock); + menuBuilderMock.Expect(mb => mb.AddCollapseAllItem()).Return(menuBuilderMock); + menuBuilderMock.Expect(mb => mb.Build()).Return(null); + + gui.Expect(cmp => cmp.Get(context, treeView)).Return(menuBuilderMock); + gui.Stub(g => g.ProjectOpened += null).IgnoreArguments(); + gui.Stub(g => g.ProjectOpened -= null).IgnoreArguments(); + + mocks.ReplayAll(); + + using (var plugin = new RingtoetsGuiPlugin()) + { + var info = GetInfo(plugin); + + plugin.Gui = gui; + + // Call + info.ContextMenuStrip(context, assessmentSection, treeView); + } + // Assert + mocks.VerifyAll(); + } + } + + [Test] + public void ContextMenuStrip_FailureMechanismIsRelevant_IsRelevantEnabledCalculateAllAndClearAllItemDisabled() + { + // Setup + using (var treeView = new TreeViewControl()) + { + var assessmentSection = mocks.Stub(); var failureMechanism = new FailureMechanismPlaceholder("A"); var context = new FailureMechanismPlaceholderContext(failureMechanism, assessmentSection); @@ -325,7 +367,7 @@ } [Test] - public void ContextMenuStrip_ClickOnIsRelevantItem_MakeFailureMechanismNotRelevant() + public void ContextMenuStrip_FailureMechanismIsRelevantAndClickOnIsRelevantItem_MakeFailureMechanismNotRelevant() { // Setup var failureMechanismObserver = mocks.Stub();