Index: Ringtoets/StabilityStoneCover/src/Ringtoets.StabilityStoneCover.Plugin/StabilityStoneCoverPlugin.cs =================================================================== diff -u -rc51ba92268d9a8272778e758fd0f9a71a0d61849 -r8748c1e603889922e9e6e3e5810805b34cac28a2 --- Ringtoets/StabilityStoneCover/src/Ringtoets.StabilityStoneCover.Plugin/StabilityStoneCoverPlugin.cs (.../StabilityStoneCoverPlugin.cs) (revision c51ba92268d9a8272778e758fd0f9a71a0d61849) +++ Ringtoets/StabilityStoneCover/src/Ringtoets.StabilityStoneCover.Plugin/StabilityStoneCoverPlugin.cs (.../StabilityStoneCoverPlugin.cs) (revision 8748c1e603889922e9e6e3e5810805b34cac28a2) @@ -81,7 +81,8 @@ GetViewName = (view, context) => context.WrappedData.Name, Image = RingtoetsCommonFormsResources.CalculationIcon, CloseForData = CloseStabilityStoneCoverFailureMechanismViewForData, - AdditionalDataCheck = context => context.WrappedData.IsRelevant + AdditionalDataCheck = context => context.WrappedData.IsRelevant, + CreateInstance = context => new StabilityStoneCoverFailureMechanismView(context.WrappedData, context.Parent) }; yield return new ViewInfo, @@ -201,12 +202,9 @@ var assessmentSection = o as IAssessmentSection; var failureMechanism = o as StabilityStoneCoverFailureMechanism; - var viewFailureMechanismContext = (StabilityStoneCoverFailureMechanismContext) view.Data; - StabilityStoneCoverFailureMechanism viewFailureMechanism = viewFailureMechanismContext.WrappedData; - return assessmentSection != null - ? ReferenceEquals(viewFailureMechanismContext.Parent, assessmentSection) - : ReferenceEquals(viewFailureMechanism, failureMechanism); + ? ReferenceEquals(view.AssessmentSection, assessmentSection) + : ReferenceEquals(view.FailureMechanism, failureMechanism); } #endregion Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Plugin.Test/ViewInfos/StabilityStoneCoverFailureMechanismViewInfoTest.cs =================================================================== diff -u -r76853a633e4f50f0059f9beedda3f85e3a602812 -r8748c1e603889922e9e6e3e5810805b34cac28a2 --- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Plugin.Test/ViewInfos/StabilityStoneCoverFailureMechanismViewInfoTest.cs (.../StabilityStoneCoverFailureMechanismViewInfoTest.cs) (revision 76853a633e4f50f0059f9beedda3f85e3a602812) +++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Plugin.Test/ViewInfos/StabilityStoneCoverFailureMechanismViewInfoTest.cs (.../StabilityStoneCoverFailureMechanismViewInfoTest.cs) (revision 8748c1e603889922e9e6e3e5810805b34cac28a2) @@ -21,6 +21,7 @@ using System.Drawing; using System.Linq; +using Core.Common.Controls.Views; using Core.Common.Gui.Plugin; using Core.Common.TestUtil; using NUnit.Framework; @@ -99,13 +100,9 @@ mocks.ReplayAll(); var stabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); - var stabilityStoneCoverFailureMechanismContext = new StabilityStoneCoverFailureMechanismContext(stabilityStoneCoverFailureMechanism, assessmentSection); - using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection) + using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection)) { - Data = stabilityStoneCoverFailureMechanismContext - }) - { // Call bool closeForData = info.CloseForData(view, otherAssessmentSection); @@ -121,15 +118,10 @@ { // Setup var assessmentSection = new ObservableTestAssessmentSectionStub(); - var stabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); - var stabilityStoneCoverFailureMechanismContext = new StabilityStoneCoverFailureMechanismContext(stabilityStoneCoverFailureMechanism, assessmentSection); - using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection) + using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection)) { - Data = stabilityStoneCoverFailureMechanismContext - }) - { // Call bool closeForData = info.CloseForData(view, assessmentSection); @@ -143,17 +135,11 @@ { // Setup var assessmentSection = new ObservableTestAssessmentSectionStub(); - var stabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); var otherStabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); - var stabilityStoneCoverFailureMechanismContext = new StabilityStoneCoverFailureMechanismContext(stabilityStoneCoverFailureMechanism, assessmentSection); - - using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection) + using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection)) { - Data = stabilityStoneCoverFailureMechanismContext - }) - { // Call bool closeForData = info.CloseForData(view, otherStabilityStoneCoverFailureMechanism); @@ -167,15 +153,10 @@ { // Setup var assessmentSection = new ObservableTestAssessmentSectionStub(); - var stabilityStoneCoverFailureMechanism = new StabilityStoneCoverFailureMechanism(); - var stabilityStoneCoverFailureMechanismContext = new StabilityStoneCoverFailureMechanismContext(stabilityStoneCoverFailureMechanism, assessmentSection); - using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection) + using (var view = new StabilityStoneCoverFailureMechanismView(stabilityStoneCoverFailureMechanism, assessmentSection)) { - Data = stabilityStoneCoverFailureMechanismContext - }) - { // Call bool closeForData = info.CloseForData(view, stabilityStoneCoverFailureMechanism); @@ -207,5 +188,21 @@ Assert.AreEqual(isRelevant, result); mocks.VerifyAll(); } + + [Test] + public void CreateInstance_WithContext_ReturnStabilityStoneCoverFailureMechanismView() + { + // Setup + var assessmentSection = new ObservableTestAssessmentSectionStub(); + var failureMechanism = new StabilityStoneCoverFailureMechanism(); + + var context = new StabilityStoneCoverFailureMechanismContext(failureMechanism, assessmentSection); + + // Call + IView view = info.CreateInstance(context); + + // Assert + Assert.IsInstanceOf(view); + } } } \ No newline at end of file