Index: Riskeer/Common/src/Riskeer.Common.Data/FailureMechanism/IFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -r6e3bc0437167a40cf4a79f0f04e31dc61ef4407f -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Common/src/Riskeer.Common.Data/FailureMechanism/IFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../IFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision 6e3bc0437167a40cf4a79f0f04e31dc61ef4407f)
+++ Riskeer/Common/src/Riskeer.Common.Data/FailureMechanism/IFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../IFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -27,12 +27,6 @@
public interface IFailureMechanismSectionResultCalculateProbabilityStrategy
{
///
- /// Calculates the initial failure mechanism result probability per profile.
- ///
- /// The calculated initial failure mechanism result probability per profile.
- double CalculateProfileProbability();
-
- ///
/// Calculates the initial failure mechanism result probability per section.
///
/// The calculated initial failure mechanism result probability per section.
Index: Riskeer/Common/src/Riskeer.Common.Data/Structures/StructuresFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -raeef94201acf00a365af7dd01d0b39ed1834963c -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Common/src/Riskeer.Common.Data/Structures/StructuresFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../StructuresFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision aeef94201acf00a365af7dd01d0b39ed1834963c)
+++ Riskeer/Common/src/Riskeer.Common.Data/Structures/StructuresFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../StructuresFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -35,6 +35,12 @@
private readonly AdoptableFailureMechanismSectionResult sectionResult;
private readonly IEnumerable> calculationScenarios;
+ ///
+ /// Creates a new instance of .
+ ///
+ /// The to get the probabilities for.
+ /// All the of the failure mechanism.
+ /// Thrown when any parameter is null.
public StructuresFailureMechanismSectionResultCalculateProbabilityStrategy(AdoptableFailureMechanismSectionResult sectionResult,
IEnumerable> calculationScenarios)
{
@@ -52,11 +58,6 @@
this.calculationScenarios = calculationScenarios;
}
- public double CalculateProfileProbability()
- {
- throw new NotImplementedException();
- }
-
public double CalculateSectionProbability()
{
return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios);
Index: Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -rac121b50c3b2b6b86d2df7b359c0abb4cfa80bc6 -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision ac121b50c3b2b6b86d2df7b359c0abb4cfa80bc6)
+++ Riskeer/GrassCoverErosionInwards/src/Riskeer.GrassCoverErosionInwards.Data/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -57,11 +57,6 @@
this.calculationScenarios = calculationScenarios;
}
- public double CalculateProfileProbability()
- {
- return CalculateSectionProbability();
- }
-
public double CalculateSectionProbability()
{
return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios);
Index: Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs
===================================================================
diff -u -rac121b50c3b2b6b86d2df7b359c0abb4cfa80bc6 -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision ac121b50c3b2b6b86d2df7b359c0abb4cfa80bc6)
+++ Riskeer/GrassCoverErosionInwards/test/Riskeer.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -74,61 +74,6 @@
}
[Test]
- public void CalculateProfileProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- GrassCoverErosionInwardsCalculationScenario calculationScenario1 = GrassCoverErosionInwardsCalculationScenarioTestFactory.CreateGrassCoverErosionInwardsCalculationScenario(section);
- GrassCoverErosionInwardsCalculationScenario calculationScenario2 = GrassCoverErosionInwardsCalculationScenarioTestFactory.CreateGrassCoverErosionInwardsCalculationScenario(section);
- GrassCoverErosionInwardsCalculationScenario calculationScenario3 = GrassCoverErosionInwardsCalculationScenarioTestFactory.CreateGrassCoverErosionInwardsCalculationScenario(section);
-
- calculationScenario1.IsRelevant = true;
- calculationScenario1.Contribution = (RoundedDouble) 0.2111;
- calculationScenario1.Output = new GrassCoverErosionInwardsOutput(new TestOvertoppingOutput(1.1), null, null);
-
- calculationScenario2.IsRelevant = true;
- calculationScenario2.Contribution = (RoundedDouble) 0.7889;
- calculationScenario1.Output = new GrassCoverErosionInwardsOutput(new TestOvertoppingOutput(2.2), null, null);
-
- calculationScenario3.IsRelevant = false;
-
- GrassCoverErosionInwardsCalculationScenario[] calculationScenarios =
- {
- calculationScenario1,
- calculationScenario2,
- calculationScenario3
- };
-
- var strategy = new GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, calculationScenarios);
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.AreEqual(0.3973850177700996, profileProbability);
- }
-
- [Test]
- public void CalculateProfileProbability_NoScenarios_ReturnsNaN()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var strategy = new GrassCoverErosionInwardsFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, Enumerable.Empty());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.IsNaN(profileProbability);
- }
-
- [Test]
public void CalculateSectionProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
{
// Setup
Index: Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -r7c898967a844e48f640836a5990a00560e697d87 -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision 7c898967a844e48f640836a5990a00560e697d87)
+++ Riskeer/MacroStabilityInwards/src/Riskeer.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -67,14 +67,11 @@
this.failureMechanism = failureMechanism;
}
- public double CalculateProfileProbability()
- {
- return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios, failureMechanism.GeneralInput.ModelFactor);
- }
-
public double CalculateSectionProbability()
{
- return Math.Min(1.0, CalculateProfileProbability() * failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN(sectionResult.Section.Length));
+ double profileProbability = sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios,
+ failureMechanism.GeneralInput.ModelFactor);
+ return Math.Min(1.0, profileProbability * failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN(sectionResult.Section.Length));
}
}
}
\ No newline at end of file
Index: Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs
===================================================================
diff -u -r7c898967a844e48f640836a5990a00560e697d87 -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision 7c898967a844e48f640836a5990a00560e697d87)
+++ Riskeer/MacroStabilityInwards/test/Riskeer.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -92,61 +92,6 @@
}
[Test]
- public void CalculateProfileProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- const double factorOfStability1 = 1.0 / 10.0;
- const double factorOfStability2 = 1.0 / 20.0;
-
- MacroStabilityInwardsCalculationScenario macroStabilityInwardsCalculationScenario1 =
- MacroStabilityInwardsCalculationScenarioTestFactory.CreateMacroStabilityInwardsCalculationScenario(factorOfStability1, section);
- MacroStabilityInwardsCalculationScenario macroStabilityInwardsCalculationScenario2 =
- MacroStabilityInwardsCalculationScenarioTestFactory.CreateMacroStabilityInwardsCalculationScenario(factorOfStability2, section);
- MacroStabilityInwardsCalculationScenario macroStabilityInwardsCalculationScenario3 =
- MacroStabilityInwardsCalculationScenarioTestFactory.CreateIrrelevantMacroStabilityInwardsCalculationScenario(section);
-
- macroStabilityInwardsCalculationScenario1.Contribution = (RoundedDouble) 0.2111;
- macroStabilityInwardsCalculationScenario2.Contribution = (RoundedDouble) 0.7889;
-
- MacroStabilityInwardsCalculationScenario[] calculations =
- {
- macroStabilityInwardsCalculationScenario1,
- macroStabilityInwardsCalculationScenario2,
- macroStabilityInwardsCalculationScenario3
- };
-
- var strategy = new MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, calculations, new MacroStabilityInwardsFailureMechanism());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.AreEqual(0.99012835, profileProbability, 1e-8);
- }
-
- [Test]
- public void CalculateProfileProbability_NoScenarios_ReturnsNaN()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var strategy = new MacroStabilityInwardsFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, Enumerable.Empty(),
- new MacroStabilityInwardsFailureMechanism());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.IsNaN(profileProbability);
- }
-
- [Test]
public void CalculateSectionProbability_MultipleScenariosForSectionWithSmallLength_ReturnsValueBasedOnRelevantScenarios()
{
// Setup
Index: Riskeer/Piping/src/Riskeer.Piping.Data/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -r0c97a0df80285a0f24c86eecd19c3e28338a702b -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Piping/src/Riskeer.Piping.Data/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision 0c97a0df80285a0f24c86eecd19c3e28338a702b)
+++ Riskeer/Piping/src/Riskeer.Piping.Data/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -56,11 +56,6 @@
this.calculationScenarios = calculationScenarios;
}
- public double CalculateProfileProbability()
- {
- return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios, scenario => scenario.Output.ProfileSpecificOutput);
- }
-
public double CalculateSectionProbability()
{
return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios, scenario => scenario.Output.SectionSpecificOutput);
Index: Riskeer/Piping/src/Riskeer.Piping.Data/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs
===================================================================
diff -u -r0c97a0df80285a0f24c86eecd19c3e28338a702b -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Piping/src/Riskeer.Piping.Data/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision 0c97a0df80285a0f24c86eecd19c3e28338a702b)
+++ Riskeer/Piping/src/Riskeer.Piping.Data/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs (.../SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -76,14 +76,11 @@
this.assessmentSection = assessmentSection;
}
- public double CalculateProfileProbability()
- {
- return sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios, assessmentSection.FailureMechanismContribution.NormativeProbability);
- }
-
public double CalculateSectionProbability()
{
- return Math.Min(1.0, CalculateProfileProbability() * failureMechanism.PipingProbabilityAssessmentInput.GetN(sectionResult.Section.Length));
+ double profileProbability = sectionResult.GetInitialFailureMechanismResultProbability(calculationScenarios,
+ assessmentSection.FailureMechanismContribution.NormativeProbability);
+ return Math.Min(1.0, profileProbability * failureMechanism.PipingProbabilityAssessmentInput.GetN(sectionResult.Section.Length));
}
}
}
\ No newline at end of file
Index: Riskeer/Piping/test/Riskeer.Piping.Data.Test/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs
===================================================================
diff -u -r0c97a0df80285a0f24c86eecd19c3e28338a702b -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Piping/test/Riskeer.Piping.Data.Test/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision 0c97a0df80285a0f24c86eecd19c3e28338a702b)
+++ Riskeer/Piping/test/Riskeer.Piping.Data.Test/Probabilistic/ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -75,58 +75,6 @@
}
[Test]
- public void CalculateProfileProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var calculationScenario1 = ProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
- var calculationScenario2 = ProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
- var calculationScenario3 = ProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
-
- calculationScenario1.IsRelevant = true;
- calculationScenario1.Contribution = (RoundedDouble) 0.2111;
-
- calculationScenario2.IsRelevant = true;
- calculationScenario2.Contribution = (RoundedDouble) 0.7889;
-
- calculationScenario3.IsRelevant = false;
-
- ProbabilisticPipingCalculationScenario[] calculations =
- {
- calculationScenario1,
- calculationScenario2,
- calculationScenario3
- };
-
- var strategy = new ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy(sectionResult, calculations);
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.AreEqual(0.24284668249632746, profileProbability);
- }
-
- [Test]
- public void CalculateProfileProbability_NoScenarios_ReturnsNaN()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var strategy = new ProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, Enumerable.Empty());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.IsNaN(profileProbability);
- }
-
- [Test]
public void CalculateSectionProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
{
// Setup
Index: Riskeer/Piping/test/Riskeer.Piping.Data.Test/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs
===================================================================
diff -u -r0c97a0df80285a0f24c86eecd19c3e28338a702b -rb0cefe30e5099ee2f465ed7660199789e6d1b865
--- Riskeer/Piping/test/Riskeer.Piping.Data.Test/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision 0c97a0df80285a0f24c86eecd19c3e28338a702b)
+++ Riskeer/Piping/test/Riskeer.Piping.Data.Test/SemiProbabilistic/SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs (.../SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategyTest.cs) (revision b0cefe30e5099ee2f465ed7660199789e6d1b865)
@@ -133,62 +133,6 @@
}
[Test]
- public void CalculateProfileProbability_MultipleScenarios_ReturnsValueBasedOnRelevantScenarios()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var calculationScenario1 = SemiProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
- var calculationScenario2 = SemiProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
- var calculationScenario3 = SemiProbabilisticPipingCalculationTestFactory.CreateCalculation(section);
-
- calculationScenario1.IsRelevant = true;
- calculationScenario1.Contribution = (RoundedDouble) 0.2111;
- calculationScenario1.Output = PipingTestDataGenerator.GetSemiProbabilisticPipingOutput(1.1, 2.2, 3.3);
-
- calculationScenario2.IsRelevant = true;
- calculationScenario2.Contribution = (RoundedDouble) 0.7889;
- calculationScenario2.Output = PipingTestDataGenerator.GetSemiProbabilisticPipingOutput(4.4, 5.5, 6.6);
-
- calculationScenario3.IsRelevant = false;
-
- SemiProbabilisticPipingCalculationScenario[] calculations =
- {
- calculationScenario1,
- calculationScenario2,
- calculationScenario3
- };
-
- var strategy = new SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, calculations, new PipingFailureMechanism(), new AssessmentSectionStub());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.AreEqual(9.2969543564512289E-16, profileProbability);
- }
-
- [Test]
- public void CalculateProfileProbability_NoScenarios_ReturnsNaN()
- {
- // Setup
- FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection();
- var sectionResult = new AdoptableFailureMechanismSectionResult(section);
-
- var strategy = new SemiProbabilisticPipingFailureMechanismSectionResultCalculateProbabilityStrategy(
- sectionResult, Enumerable.Empty(),
- new PipingFailureMechanism(), new AssessmentSectionStub());
-
- // Call
- double profileProbability = strategy.CalculateProfileProbability();
-
- // Assert
- Assert.IsNaN(profileProbability);
- }
-
- [Test]
public void CalculateSectionProbability_MultipleScenariosForSectionWithSmallLength_ReturnsValueBasedOnRelevantScenarios()
{
// Setup