Index: Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/ExportInfos/StabilityStoneCoverWaveConditionsCalculationGroupContextExportInfoTest.cs =================================================================== diff -u -rd58a7ff7f54c83dfe5d1ef28417c43a83346b5ba -r98bab44f197973c10226a048ff186c01bbd3b5a2 --- Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/ExportInfos/StabilityStoneCoverWaveConditionsCalculationGroupContextExportInfoTest.cs (.../StabilityStoneCoverWaveConditionsCalculationGroupContextExportInfoTest.cs) (revision d58a7ff7f54c83dfe5d1ef28417c43a83346b5ba) +++ Ringtoets/Integration/test/Ringtoets.Integration.Forms.Test/ExportInfos/StabilityStoneCoverWaveConditionsCalculationGroupContextExportInfoTest.cs (.../StabilityStoneCoverWaveConditionsCalculationGroupContextExportInfoTest.cs) (revision 98bab44f197973c10226a048ff186c01bbd3b5a2) @@ -48,7 +48,6 @@ var failureMechanism = new StabilityStoneCoverFailureMechanism(); var calculationGroup = new CalculationGroup(); - // Call var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, failureMechanism, assessmentSection); using (StabilityStoneCoverPlugin plugin = new StabilityStoneCoverPlugin()) { @@ -90,7 +89,6 @@ var failureMechanism = new StabilityStoneCoverFailureMechanism(); var calculationGroup = new CalculationGroup(); - // Call var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, failureMechanism, assessmentSection); using (StabilityStoneCoverPlugin plugin = new StabilityStoneCoverPlugin()) { @@ -116,8 +114,7 @@ var failureMechanism = new StabilityStoneCoverFailureMechanism(); var calculationGroup = new CalculationGroup(); calculationGroup.Children.Add(new StabilityStoneCoverWaveConditionsCalculation()); - - // Call + var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, failureMechanism, assessmentSection); using (StabilityStoneCoverPlugin plugin = new StabilityStoneCoverPlugin()) { @@ -158,7 +155,6 @@ Output = new StabilityStoneCoverWaveConditionsOutput(columnsOutput, blocksOutput) }); - // Call var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, failureMechanism, assessmentSection); using (StabilityStoneCoverPlugin plugin = new StabilityStoneCoverPlugin()) { @@ -173,6 +169,62 @@ mocks.VerifyAll(); } + [Test] + [TestCase(true)] + [TestCase(false)] + public void IsEnabled_StabilityStoneCoverWaveConditionsCalculationInSubFolder_ReturnsTrueIfHasOutput(bool hasOutput) + { + // Setup + var mocks = new MockRepository(); + var assessmentSection = mocks.Stub(); + mocks.ReplayAll(); + + var failureMechanism = new StabilityStoneCoverFailureMechanism(); + var calculationGroup = new CalculationGroup(); + var columnsOutput = new[] + { + new WaveConditionsOutput(1, 0, 3, 5), + new WaveConditionsOutput(8, 2, 6, 1) + }; + + var blocksOutput = new[] + { + new WaveConditionsOutput(6, 2, 9, 4), + new WaveConditionsOutput(4, 1, 7, 3) + }; + + + StabilityStoneCoverWaveConditionsOutput stabilityStoneCoverWaveConditionsOutput = null; + if (hasOutput) + { + stabilityStoneCoverWaveConditionsOutput = new StabilityStoneCoverWaveConditionsOutput(columnsOutput, blocksOutput); + } + calculationGroup.Children.Add( + new CalculationGroup + { + Children = + { + new StabilityStoneCoverWaveConditionsCalculation + { + Output = stabilityStoneCoverWaveConditionsOutput + } + } + }); + + var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, failureMechanism, assessmentSection); + using (StabilityStoneCoverPlugin plugin = new StabilityStoneCoverPlugin()) + { + ExportInfo info = GetExportInfo(plugin); + + // Call + bool isEnabled = info.IsEnabled(context); + + // Assert + Assert.AreEqual(hasOutput, isEnabled); + } + mocks.VerifyAll(); + } + private static ExportInfo GetExportInfo(StabilityStoneCoverPlugin plugin) { return plugin.GetExportInfos().First(ei => ei.DataType == typeof(StabilityStoneCoverWaveConditionsCalculationGroupContext));