Index: Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsPlugin.cs =================================================================== diff -u -r351b00f0c30e2e39c4eb973273a8d75ed9e740da -rc822ad9fa185d57ddbaf9c0bbd61790e73272bd1 --- Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsPlugin.cs (.../GrassCoverErosionInwardsPlugin.cs) (revision 351b00f0c30e2e39c4eb973273a8d75ed9e740da) +++ Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsPlugin.cs (.../GrassCoverErosionInwardsPlugin.cs) (revision c822ad9fa185d57ddbaf9c0bbd61790e73272bd1) @@ -430,7 +430,7 @@ private static bool CloseFailureMechanismResultViewForData(GrassCoverErosionInwardsFailureMechanismResultView view, object dataToCloseFor) { - GrassCoverErosionInwardsFailureMechanism failureMechanism = null; + var failureMechanism = dataToCloseFor as GrassCoverErosionInwardsFailureMechanism; if (dataToCloseFor is IAssessmentSection assessmentSection) { Index: Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Plugin.Test/ViewInfos/GrassCoverErosionInwardsFailureMechanismResultViewInfoTest.cs =================================================================== diff -u -r2503894f449e6a2d24fe0cf15ff1d8a6cd831a3c -rc822ad9fa185d57ddbaf9c0bbd61790e73272bd1 --- Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Plugin.Test/ViewInfos/GrassCoverErosionInwardsFailureMechanismResultViewInfoTest.cs (.../GrassCoverErosionInwardsFailureMechanismResultViewInfoTest.cs) (revision 2503894f449e6a2d24fe0cf15ff1d8a6cd831a3c) +++ Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Plugin.Test/ViewInfos/GrassCoverErosionInwardsFailureMechanismResultViewInfoTest.cs (.../GrassCoverErosionInwardsFailureMechanismResultViewInfoTest.cs) (revision c822ad9fa185d57ddbaf9c0bbd61790e73272bd1) @@ -178,6 +178,46 @@ } [Test] + public void CloseForData_ViewCorrespondingToRemovedFailureMechanism_ReturnsTrue() + { + // Setup + var mocks = new MockRepository(); + var assessmentSection = mocks.Stub(); + mocks.ReplayAll(); + + var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + + var view = new GrassCoverErosionInwardsFailureMechanismResultView(failureMechanism.SectionResults, failureMechanism, assessmentSection); + + // Call + bool closeForData = info.CloseForData(view, failureMechanism); + + // Assert + Assert.IsTrue(closeForData); + mocks.VerifyAll(); + } + + [Test] + public void CloseForData_ViewNotCorrespondingToRemovedFailureMechanism_ReturnsFalse() + { + // Setup + var mocks = new MockRepository(); + var assessmentSection = mocks.Stub(); + mocks.ReplayAll(); + + var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + + var view = new GrassCoverErosionInwardsFailureMechanismResultView(failureMechanism.SectionResults, failureMechanism, assessmentSection); + + // Call + bool closeForData = info.CloseForData(view, new GrassCoverErosionInwardsFailureMechanism()); + + // Assert + Assert.IsFalse(closeForData); + mocks.VerifyAll(); + } + + [Test] public void CloseForData_ViewCorrespondingToRemovedFailurePathContext_ReturnsTrue() { // Setup