Index: Riskeer/GrassCoverErosionOutwards/src/Riskeer.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs =================================================================== diff -u -r616cd42041672478a333b919187f5fba4f3522b5 -r7c4861326360ada93b789079b501f4f7c34572a1 --- Riskeer/GrassCoverErosionOutwards/src/Riskeer.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs (.../GrassCoverErosionOutwardsPlugin.cs) (revision 616cd42041672478a333b919187f5fba4f3522b5) +++ Riskeer/GrassCoverErosionOutwards/src/Riskeer.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs (.../GrassCoverErosionOutwardsPlugin.cs) (revision 7c4861326360ada93b789079b501f4f7c34572a1) @@ -122,7 +122,7 @@ GetViewName = (view, context) => context.WrappedData.Name, Image = RiskeerCommonFormsResources.FailureMechanismIcon, CreateInstance = context => new GrassCoverErosionOutwardsFailurePathView(context.WrappedData, context.Parent), - CloseForData = CloseFailurePathViewForData + CloseForData = CloseFailurePathViewForData }; yield return new ViewInfo< @@ -282,10 +282,10 @@ ? ReferenceEquals(view.AssessmentSection, assessmentSection) : ReferenceEquals(view.FailureMechanism, failureMechanism); } - + private static bool CloseFailureMechanismResultViewForData(GrassCoverErosionOutwardsFailureMechanismResultView view, object dataToCloseFor) { - GrassCoverErosionOutwardsFailureMechanism failureMechanism = null; + var failureMechanism = dataToCloseFor as GrassCoverErosionOutwardsFailureMechanism; if (dataToCloseFor is IAssessmentSection assessmentSection) { Index: Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Plugin.Test/ViewInfos/GrassCoverErosionOutwardsFailureMechanismResultViewInfoTest.cs =================================================================== diff -u -rb9ca1ec4ebea6d4cf89d7ae5d18477e7fa34629b -r7c4861326360ada93b789079b501f4f7c34572a1 --- Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Plugin.Test/ViewInfos/GrassCoverErosionOutwardsFailureMechanismResultViewInfoTest.cs (.../GrassCoverErosionOutwardsFailureMechanismResultViewInfoTest.cs) (revision b9ca1ec4ebea6d4cf89d7ae5d18477e7fa34629b) +++ Riskeer/GrassCoverErosionOutwards/test/Riskeer.GrassCoverErosionOutwards.Plugin.Test/ViewInfos/GrassCoverErosionOutwardsFailureMechanismResultViewInfoTest.cs (.../GrassCoverErosionOutwardsFailureMechanismResultViewInfoTest.cs) (revision 7c4861326360ada93b789079b501f4f7c34572a1) @@ -178,6 +178,38 @@ } [Test] + public void CloseForData_ViewCorrespondingToRemovedFailureMechanism_ReturnsTrue() + { + // Setup + var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); + + using (var view = new GrassCoverErosionOutwardsFailureMechanismResultView(failureMechanism.SectionResults, failureMechanism)) + { + // Call + bool closeForData = info.CloseForData(view, failureMechanism); + + // Assert + Assert.IsTrue(closeForData); + } + } + + [Test] + public void CloseForData_ViewNotCorrespondingToRemovedFailureMechanism_ReturnsFalse() + { + // Setup + var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); + + using (var view = new GrassCoverErosionOutwardsFailureMechanismResultView(failureMechanism.SectionResults, failureMechanism)) + { + // Call + bool closeForData = info.CloseForData(view, new GrassCoverErosionOutwardsFailureMechanism()); + + // Assert + Assert.IsFalse(closeForData); + } + } + + [Test] public void CloseForData_ViewCorrespondingToRemovedFailurePathContext_ReturnsTrue() { // Setup