Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuItemFactoryTest.cs =================================================================== diff -u -r3178e116f5e59e03078d465efeb303c5e232c7bf -r8b60c9e846480f3ffeeb263bfea5d3367bf6bee3 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuItemFactoryTest.cs (.../RingtoetsContextMenuItemFactoryTest.cs) (revision 3178e116f5e59e03078d465efeb303c5e232c7bf) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuItemFactoryTest.cs (.../RingtoetsContextMenuItemFactoryTest.cs) (revision 8b60c9e846480f3ffeeb263bfea5d3367bf6bee3) @@ -97,8 +97,9 @@ mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup(); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateAddCalculationItem(calculationGroupContext, context => { }); @@ -122,8 +123,9 @@ mocks.ReplayAll(); var counter = 0; + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup(); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateAddCalculationItem(calculationGroupContext, context => counter++); // Call @@ -850,8 +852,9 @@ mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreatePerformCalculationItem(calculation, calculationContext, null, context => null); @@ -874,8 +877,9 @@ mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -900,8 +904,9 @@ mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); var counter = 0; StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreatePerformCalculationItem(calculation, calculationContext, (calc, context) => counter++, context => null); @@ -927,8 +932,9 @@ var failureMechanism = mocks.StrictMock(); mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateValidateCalculationItem(calculationContext, null, c => null); @@ -950,8 +956,9 @@ var failureMechanism = mocks.StrictMock(); mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -975,8 +982,9 @@ var failureMechanism = mocks.StrictMock(); mocks.ReplayAll(); + var parent = new CalculationGroup(); var calculation = new TestCalculation(); - var calculationContext = new TestCalculationContext(calculation, failureMechanism); + var calculationContext = new TestCalculationContext(calculation, parent, failureMechanism); var counter = 0; StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateValidateCalculationItem(calculationContext, calc => counter++, c => null); @@ -1007,12 +1015,13 @@ } }; + var parent = new CalculationGroup(); var failureMechanism = new TestFailureMechanism(new[] { calculation }); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreatePerformAllCalculationsInGroupItem(calculationGroup, calculationGroupContext, null, context => null); @@ -1031,14 +1040,15 @@ var failureMechanism = new TestFailureMechanism(Enumerable.Empty()); var nestedGroup = new CalculationGroup(); + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup { Children = { nestedGroup } }; - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreatePerformAllCalculationsInGroupItem(calculationGroup, calculationGroupContext, null, context => null); @@ -1063,12 +1073,13 @@ } }; + var parent = new CalculationGroup(); var failureMechanism = new TestFailureMechanism(new[] { calculation }); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -1088,8 +1099,9 @@ // Setup var failureMechanism = new TestFailureMechanism(Enumerable.Empty()); + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup(); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -1114,6 +1126,7 @@ }); var counter = 0; + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup { Children = @@ -1122,7 +1135,7 @@ } }; - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreatePerformAllCalculationsInGroupItem(calculationGroup, calculationGroupContext, (group, context) => counter++, context => null); @@ -1150,12 +1163,13 @@ } }; + var parent = new CalculationGroup(); var failureMechanism = new TestFailureMechanism(new[] { calculation }); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateValidateAllCalculationsInGroupItem(calculationGroupContext, null, context => null); @@ -1174,14 +1188,15 @@ var failureMechanism = new TestFailureMechanism(Enumerable.Empty()); var nestedGroup = new CalculationGroup(); + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup { Children = { nestedGroup } }; - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); // Call StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateValidateAllCalculationsInGroupItem(calculationGroupContext, null, context => null); @@ -1206,12 +1221,13 @@ } }; + var parent = new CalculationGroup(); var failureMechanism = new TestFailureMechanism(new[] { calculation }); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -1231,8 +1247,9 @@ // Setup var failureMechanism = new TestFailureMechanism(Enumerable.Empty()); + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup(); - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); const string errorMessage = "Additional check failed."; @@ -1257,6 +1274,7 @@ }); var counter = 0; + var parent = new CalculationGroup(); var calculationGroup = new CalculationGroup { Children = @@ -1265,7 +1283,7 @@ } }; - var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); + var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, parent, failureMechanism); StrictContextMenuItem toolStripItem = RingtoetsContextMenuItemFactory.CreateValidateAllCalculationsInGroupItem( calculationGroupContext, @@ -1565,27 +1583,33 @@ private class TestCalculationGroupContext : Observable, ICalculationContext { - public TestCalculationGroupContext(CalculationGroup wrappedData, IFailureMechanism failureMechanism) + public TestCalculationGroupContext(CalculationGroup wrappedData, CalculationGroup parent, IFailureMechanism failureMechanism) { WrappedData = wrappedData; + Parent = parent; FailureMechanism = failureMechanism; } public CalculationGroup WrappedData { get; } + public CalculationGroup Parent { get; } + public IFailureMechanism FailureMechanism { get; } } private class TestCalculationContext : Observable, ICalculationContext { - public TestCalculationContext(TestCalculation wrappedData, IFailureMechanism failureMechanism) + public TestCalculationContext(TestCalculation wrappedData, CalculationGroup parent, IFailureMechanism failureMechanism) { WrappedData = wrappedData; + Parent = parent; FailureMechanism = failureMechanism; } public TestCalculation WrappedData { get; } + public CalculationGroup Parent { get; } + public IFailureMechanism FailureMechanism { get; } }