Index: Riskeer/StabilityPointStructures/src/Riskeer.StabilityPointStructures.Plugin/StabilityPointStructuresPlugin.cs =================================================================== diff -u -r4617a337f4f0c9cf49ee38026b7f77f618e910a8 -r558e7064898721a6317eff7f6fc82048d41e3de6 --- Riskeer/StabilityPointStructures/src/Riskeer.StabilityPointStructures.Plugin/StabilityPointStructuresPlugin.cs (.../StabilityPointStructuresPlugin.cs) (revision 4617a337f4f0c9cf49ee38026b7f77f618e910a8) +++ Riskeer/StabilityPointStructures/src/Riskeer.StabilityPointStructures.Plugin/StabilityPointStructuresPlugin.cs (.../StabilityPointStructuresPlugin.cs) (revision 558e7064898721a6317eff7f6fc82048d41e3de6) @@ -289,62 +289,61 @@ #region ViewInfos - private static bool CloseFailureMechanismResultViewForData(StabilityPointStructuresFailureMechanismResultView view, object viewData) + private static bool CloseFailureMechanismResultViewForData(StabilityPointStructuresFailureMechanismResultView view, object dataToCloseFor) { - var assessmentSection = viewData as IAssessmentSection; - var failureMechanism = viewData as StabilityPointStructuresFailureMechanism; - var failureMechanismContext = viewData as IFailureMechanismContext; - if (assessmentSection != null) + StabilityPointStructuresFailureMechanism failureMechanism = null; + + if (dataToCloseFor is IAssessmentSection assessmentSection) { - return assessmentSection - .GetFailureMechanisms() - .OfType() - .Any(fm => ReferenceEquals(view.FailureMechanism.SectionResults, fm.SectionResults)); + failureMechanism = assessmentSection + .GetFailureMechanisms() + .OfType() + .SingleOrDefault(); } - if (failureMechanismContext != null) + if (dataToCloseFor is IFailureMechanismContext failureMechanismContext) { failureMechanism = failureMechanismContext.WrappedData; } return failureMechanism != null && ReferenceEquals(view.FailureMechanism.SectionResults, failureMechanism.SectionResults); } - private static bool CloseScenariosViewForData(StabilityPointStructuresScenariosView view, object removedData) + private static bool CloseScenariosViewForData(StabilityPointStructuresScenariosView view, object dataToCloseFor) { - var failureMechanism = removedData as StabilityPointStructuresFailureMechanism; + StabilityPointStructuresFailureMechanism failureMechanism = null; - if (removedData is FailureMechanismContext failureMechanismContext) + if (dataToCloseFor is IAssessmentSection assessmentSection) { - failureMechanism = failureMechanismContext.WrappedData; - } - - if (removedData is IAssessmentSection assessmentSection) - { failureMechanism = assessmentSection.GetFailureMechanisms() .OfType() .FirstOrDefault(); } + if (dataToCloseFor is FailureMechanismContext failureMechanismContext) + { + failureMechanism = failureMechanismContext.WrappedData; + } + return failureMechanism != null && ReferenceEquals(view.Data, failureMechanism.CalculationsGroup); } - private static bool CloseCalculationsViewForData(StabilityPointStructuresCalculationsView view, object o) + private static bool CloseCalculationsViewForData(StabilityPointStructuresCalculationsView view, object dataToCloseFor) { - var failureMechanism = o as StabilityPointStructuresFailureMechanism; + StabilityPointStructuresFailureMechanism failureMechanism = null; - if (o is StabilityPointStructuresCalculationsContext failureMechanismContext) + if (dataToCloseFor is IAssessmentSection assessmentSection) { - failureMechanism = failureMechanismContext.WrappedData; - } - - if (o is IAssessmentSection assessmentSection) - { failureMechanism = assessmentSection.GetFailureMechanisms() .OfType() .FirstOrDefault(); } + if (dataToCloseFor is StabilityPointStructuresCalculationsContext failureMechanismContext) + { + failureMechanism = failureMechanismContext.WrappedData; + } + return failureMechanism != null && ReferenceEquals(view.Data, failureMechanism.CalculationsGroup); } Index: Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresCalculationsViewInfoTest.cs =================================================================== diff -u -rc31624c97c0497973430f779ab1d82c46696a2a1 -r558e7064898721a6317eff7f6fc82048d41e3de6 --- Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresCalculationsViewInfoTest.cs (.../StabilityPointStructuresCalculationsViewInfoTest.cs) (revision c31624c97c0497973430f779ab1d82c46696a2a1) +++ Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresCalculationsViewInfoTest.cs (.../StabilityPointStructuresCalculationsViewInfoTest.cs) (revision 558e7064898721a6317eff7f6fc82048d41e3de6) @@ -194,41 +194,6 @@ } [Test] - public void CloseForData_ViewNotCorrespondingToRemovedFailureMechanism_ReturnsFalse() - { - // Setup - var assessmentSection = new AssessmentSectionStub(); - - using (var view = new StabilityPointStructuresCalculationsView(new CalculationGroup(), new StabilityPointStructuresFailureMechanism(), assessmentSection)) - { - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - - // Call - bool closeForData = info.CloseForData(view, failureMechanism); - - // Assert - Assert.IsFalse(closeForData); - } - } - - [Test] - public void CloseForData_ViewCorrespondingToRemovedFailureMechanism_ReturnsTrue() - { - // Setup - var assessmentSection = new AssessmentSectionStub(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - - using (var view = new StabilityPointStructuresCalculationsView(failureMechanism.CalculationsGroup, failureMechanism, assessmentSection)) - { - // Call - bool closeForData = info.CloseForData(view, failureMechanism); - - // Assert - Assert.IsTrue(closeForData); - } - } - - [Test] public void CloseForData_ViewNotCorrespondingToRemovedCalculationsContext_ReturnsFalse() { // Setup Index: Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresFailureMechanismResultViewInfoTest.cs =================================================================== diff -u -r5f6bdfc65e13cbc0d2e86a271a18fd8ca08e249a -r558e7064898721a6317eff7f6fc82048d41e3de6 --- Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresFailureMechanismResultViewInfoTest.cs (.../StabilityPointStructuresFailureMechanismResultViewInfoTest.cs) (revision 5f6bdfc65e13cbc0d2e86a271a18fd8ca08e249a) +++ Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresFailureMechanismResultViewInfoTest.cs (.../StabilityPointStructuresFailureMechanismResultViewInfoTest.cs) (revision 558e7064898721a6317eff7f6fc82048d41e3de6) @@ -183,50 +183,6 @@ } [Test] - public void CloseForData_ViewCorrespondingToRemovedFailureMechanism_ReturnsTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - - using (var view = new StabilityPointStructuresFailureMechanismResultView(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 StabilityPointStructuresFailureMechanism(); - - using (var view = new StabilityPointStructuresFailureMechanismResultView(failureMechanism.SectionResults, failureMechanism, assessmentSection)) - { - // Call - bool closeForData = info.CloseForData(view, new StabilityPointStructuresFailureMechanism()); - - // Assert - Assert.IsFalse(closeForData); - } - - mocks.VerifyAll(); - } - - [Test] public void CloseForData_ViewCorrespondingToRemovedFailurePathContext_ReturnsTrue() { // Setup Index: Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresScenariosViewInfoTest.cs =================================================================== diff -u -r5f6bdfc65e13cbc0d2e86a271a18fd8ca08e249a -r558e7064898721a6317eff7f6fc82048d41e3de6 --- Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresScenariosViewInfoTest.cs (.../StabilityPointStructuresScenariosViewInfoTest.cs) (revision 5f6bdfc65e13cbc0d2e86a271a18fd8ca08e249a) +++ Riskeer/StabilityPointStructures/test/Riskeer.StabilityPointStructures.Plugin.Test/ViewInfos/StabilityPointStructuresScenariosViewInfoTest.cs (.../StabilityPointStructuresScenariosViewInfoTest.cs) (revision 558e7064898721a6317eff7f6fc82048d41e3de6) @@ -162,47 +162,6 @@ } [Test] - public void CloseForData_ViewNotCorrespondingToRemovedFailureMechanism_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - using (var view = new StabilityPointStructuresScenariosView(new CalculationGroup(), new StabilityPointStructuresFailureMechanism(), assessmentSection)) - { - // Call - bool closeForData = info.CloseForData(view, new StabilityPointStructuresFailureMechanism()); - - // Assert - Assert.IsFalse(closeForData); - } - - mocks.VerifyAll(); - } - - [Test] - public void CloseForData_ViewCorrespondingToRemovedFailureMechanism_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var correspondingFailureMechanism = new StabilityPointStructuresFailureMechanism(); - using (var view = new StabilityPointStructuresScenariosView(correspondingFailureMechanism.CalculationsGroup, correspondingFailureMechanism, assessmentSection)) - { - // Call - bool closeForData = info.CloseForData(view, correspondingFailureMechanism); - - // Assert - Assert.IsTrue(closeForData); - } - - mocks.VerifyAll(); - } - - [Test] public void CloseForData_AssessmentSectionRemovedWithoutStabilityPointStructuresFailureMechanism_ReturnFalse() { // Setup