Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs =================================================================== diff -u -ra102fea862becd91b612d707102eea3fa41a8c67 -r2eb13d54b332fd4bdea7d44b35a509cd843c70f7 --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs (.../PipingCalculationInputsNodePresenterTest.cs) (revision a102fea862becd91b612d707102eea3fa41a8c67) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/NodePresenters/PipingCalculationInputsNodePresenterTest.cs (.../PipingCalculationInputsNodePresenterTest.cs) (revision 2eb13d54b332fd4bdea7d44b35a509cd843c70f7) @@ -587,5 +587,30 @@ Assert.IsNotNull(pipingData.Output); mockRepository.VerifyAll(); } + + [Test] + public void GivenPipingDataWithOutput_WhenClearingOutputFromContextMenu_ThenPipingDataOutputClearedAndNotified() + { + // Given + int clearOutputItemPosition = 2; + var pipingData = new PipingData(); + var observer = mockRepository.StrictMock(); + observer.Expect(o => o.UpdateObserver()); + pipingData.Output = new TestPipingOutput(); + pipingData.Attach(observer); + + mockRepository.ReplayAll(); + + var nodePresenter = new PipingCalculationInputsNodePresenter(); + var contextMenuAdapter = nodePresenter.GetContextMenu(null, new PipingCalculationInputs { PipingData = pipingData }); + + // When + contextMenuAdapter.Items[clearOutputItemPosition].PerformClick(); + + // Then + Assert.IsFalse(pipingData.HasOutput); + + mockRepository.VerifyAll(); + } } } \ No newline at end of file