Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Forms/Views/StabilityPointStructuresFailureMechanismResultView.cs =================================================================== diff -u -r884ba6ca60d8d9b50081e847a44e18c02b470138 -r27496391b1c1359901764bec06c687a778be0031 --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Forms/Views/StabilityPointStructuresFailureMechanismResultView.cs (.../StabilityPointStructuresFailureMechanismResultView.cs) (revision 884ba6ca60d8d9b50081e847a44e18c02b470138) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Forms/Views/StabilityPointStructuresFailureMechanismResultView.cs (.../StabilityPointStructuresFailureMechanismResultView.cs) (revision 27496391b1c1359901764bec06c687a778be0031) @@ -26,6 +26,7 @@ using Ringtoets.Common.Data.Calculation; using Ringtoets.Common.Data.Structures; using Ringtoets.Common.Forms.Builders; +using Ringtoets.Common.Forms.Controls; using Ringtoets.Common.Forms.Views; using Ringtoets.StabilityPointStructures.Data; @@ -52,7 +53,6 @@ private readonly IAssessmentSection assessmentSection; private readonly RecursiveObserver calculationInputObserver; - private readonly RecursiveObserver calculationOutputObserver; private readonly RecursiveObserver calculationGroupObserver; /// @@ -73,25 +73,23 @@ this.assessmentSection = assessmentSection; + FailureMechanismAssemblyResultControl = new FailureMechanismAssemblyResultWithProbabilityControl(); + GetFailureMechanismAssemblyFunc = () => StabilityPointStructuresFailureMechanismSectionResultAssemblyFactory.AssembleFailureMechanism(FailureMechanism, assessmentSection); + TableLayoutPanel.Controls.Add(FailureMechanismAssemblyResultControl, 0, 0); + // The concat is needed to observe the input of calculations in child groups. calculationInputObserver = new RecursiveObserver( - UpdateDataGridViewDataSource, + UpdateView, cg => cg.Children.Concat(cg.Children .OfType>() .Select(c => c.InputParameters))); - calculationOutputObserver = new RecursiveObserver( - UpdateDataGridViewDataSource, - cg => cg.Children.Concat(cg.Children - .OfType>() - .Select(c => c.Output))); calculationGroupObserver = new RecursiveObserver( - UpdateDataGridViewDataSource, + UpdateView, c => c.Children); CalculationGroup observableGroup = failureMechanism.CalculationsGroup; calculationInputObserver.Observable = observableGroup; - calculationOutputObserver.Observable = observableGroup; calculationGroupObserver.Observable = observableGroup; } @@ -120,7 +118,6 @@ protected override void Dispose(bool disposing) { calculationInputObserver.Dispose(); - calculationOutputObserver.Dispose(); calculationGroupObserver.Dispose(); base.Dispose(disposing); Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/Views/StabilityPointStructuresFailureMechanismResultViewTest.cs =================================================================== diff -u -r6f33b44599df032ecae3342b0aacd606a9e87c1f -r27496391b1c1359901764bec06c687a778be0031 --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/Views/StabilityPointStructuresFailureMechanismResultViewTest.cs (.../StabilityPointStructuresFailureMechanismResultViewTest.cs) (revision 6f33b44599df032ecae3342b0aacd606a9e87c1f) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/Views/StabilityPointStructuresFailureMechanismResultViewTest.cs (.../StabilityPointStructuresFailureMechanismResultViewTest.cs) (revision 27496391b1c1359901764bec06c687a778be0031) @@ -27,7 +27,9 @@ using Rhino.Mocks; using Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Calculators; using Ringtoets.Common.Data.AssessmentSection; +using Ringtoets.Common.Data.Structures; using Ringtoets.Common.Data.TestUtil; +using Ringtoets.Common.Forms.TestUtil; using Ringtoets.Common.Forms.Views; using Ringtoets.Common.Primitives; using Ringtoets.StabilityPointStructures.Data; @@ -201,6 +203,33 @@ } } + [TestFixture] + public class StabilityPointStructuresFailureMechanismResultWithProbabilityTest : FailureMechanismResultWithProbabilityTester< + StabilityPointStructuresFailureMechanismResultView, + StabilityPointStructuresFailureMechanism, + StabilityPointStructuresFailureMechanismSectionResult, + StabilityPointStructuresFailureMechanismSectionResultRow, + StructuresCalculation, + StabilityPointStructuresInput> + { + protected override StabilityPointStructuresFailureMechanismResultView CreateResultView(StabilityPointStructuresFailureMechanism failureMechanism) + { + return new StabilityPointStructuresFailureMechanismResultView(failureMechanism.SectionResults, + failureMechanism, + new AssessmentSectionStub()); + } + + protected override StructuresCalculation CreateCalculation() + { + return new StructuresCalculation(); + } + + protected override StabilityPointStructuresInput GetInput(StructuresCalculation calculation) + { + return calculation.InputParameters; + } + } + private StabilityPointStructuresFailureMechanismResultView ShowFailureMechanismResultsView( IObservableEnumerable sectionResults) {