Index: Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs =================================================================== diff -u -r9d327503e94b4ecf3dcec82d1479e1fba59faab9 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs (.../FailureMechanismSectionAssemblyCalculator.cs) (revision 9d327503e94b4ecf3dcec82d1479e1fba59faab9) +++ Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs (.../FailureMechanismSectionAssemblyCalculator.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -123,23 +123,41 @@ } } - public FailureMechanismSectionAssembly AssembleDetailedAssessment(double probability, + public FailureMechanismSectionAssembly AssembleDetailedAssessment(DetailedAssessmentResultType detailedAssessmentResult, + double probability, IEnumerable categories, double n) { - try + if (!Enum.IsDefined(typeof(DetailedAssessmentResultType), detailedAssessmentResult)) { - IFailureMechanismSectionAssemblyCalculatorKernel kernel = factory.CreateFailureMechanismSectionAssemblyKernel(); - CalculationOutput output = kernel.DetailedAssessmentDirectFailureMechanisms( - FailureMechanismSectionAssemblyCalculatorInputCreator.CreateDetailedCalculationInputFromProbabilityWithLengthEffect(probability, - categories, - n)); - - return FailureMechanismSectionAssemblyCreator.Create(output.Result); + throw new InvalidEnumArgumentException(nameof(detailedAssessmentResult), + (int) detailedAssessmentResult, + typeof(DetailedAssessmentResultType)); } - catch (Exception e) + + switch (detailedAssessmentResult) { - throw new FailureMechanismSectionAssemblyCalculatorException(e.Message, e); + case DetailedAssessmentResultType.Probability: + try + { + IFailureMechanismSectionAssemblyCalculatorKernel kernel = factory.CreateFailureMechanismSectionAssemblyKernel(); + CalculationOutput output = kernel.DetailedAssessmentDirectFailureMechanisms( + FailureMechanismSectionAssemblyCalculatorInputCreator.CreateDetailedCalculationInputFromProbabilityWithLengthEffect(probability, + categories, + n)); + + return FailureMechanismSectionAssemblyCreator.Create(output.Result); + } + catch (Exception e) + { + throw new FailureMechanismSectionAssemblyCalculatorException(e.Message, e); + } + case DetailedAssessmentResultType.NotAssessed: + return FailureMechanismSectionAssemblyCreator.Create(new FailureMechanismSectionAssemblyCategoryResult( + FailureMechanismSectionCategoryGroup.VIIv, + new Probability(0.0))); + default: + throw new NotSupportedException(); } } Index: Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs =================================================================== diff -u -r9d327503e94b4ecf3dcec82d1479e1fba59faab9 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs (.../IFailureMechanismSectionAssemblyCalculator.cs) (revision 9d327503e94b4ecf3dcec82d1479e1fba59faab9) +++ Ringtoets/AssemblyTool/src/Ringtoets.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs (.../IFailureMechanismSectionAssemblyCalculator.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -70,13 +70,15 @@ /// /// Assembles the detailed assessment based on the input parameters. /// + /// The detailed assessment result. /// The calculated probability. /// The collection of categories for this failure mechanism section. /// The 'N' parameter used to factor in the 'length effect'. /// A . /// Thrown when /// an error occurs when performing the assembly. - FailureMechanismSectionAssembly AssembleDetailedAssessment(double probability, + FailureMechanismSectionAssembly AssembleDetailedAssessment(DetailedAssessmentResultType detailedAssessmentResult, + double probability, IEnumerable categories, double n); Index: Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs =================================================================== diff -u -r9d327503e94b4ecf3dcec82d1479e1fba59faab9 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs (.../FailureMechanismSectionAssemblyCalculatorTest.cs) (revision 9d327503e94b4ecf3dcec82d1479e1fba59faab9) +++ Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs (.../FailureMechanismSectionAssemblyCalculatorTest.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -331,7 +331,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(), @@ -346,7 +345,7 @@ // Call TestDelegate test = () => calculator.AssembleTailorMadeAssessment((TailorMadeAssessmentProbabilityCalculationResultType) 99, - probability, + random.NextDouble(), categories); // Assert @@ -362,7 +361,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(), @@ -377,7 +375,7 @@ // Call TestDelegate test = () => calculator.AssembleTailorMadeAssessment(TailorMadeAssessmentProbabilityCalculationResultType.Probability, - probability, + random.NextDouble(), categories); // Assert @@ -762,17 +760,14 @@ public void AssembleDetailedAssessment_WithInvalidResultEnumInput_ThrowInvalidEnumArgumentException() { // Setup - var random = new Random(39); - double probability = random.NextDouble(); - using (new AssemblyToolKernelFactoryConfig()) { var factory = (TestAssemblyToolKernelFactory) AssemblyToolKernelFactory.Instance; var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call TestDelegate test = () => calculator.AssembleDetailedAssessment((DetailedAssessmentResultType) 99, - probability, + new Random(39).NextDouble(), Enumerable.Empty()); // Assert @@ -787,7 +782,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(), @@ -801,7 +795,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, probability, categories); + TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, random.NextDouble(), categories); // Assert var exception = Assert.Throws(test); @@ -816,7 +810,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -834,7 +827,9 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - FailureMechanismSectionAssembly detailedAssembly = calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.NotAssessed, probability, categories); + FailureMechanismSectionAssembly detailedAssembly = calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.NotAssessed, + random.NextDouble(), + categories); // Assert Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.VIIv, detailedAssembly.Group); @@ -883,7 +878,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -902,7 +896,7 @@ // Call FailureMechanismSectionAssembly assembly = calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, - probability, + random.NextDouble(), categories); // Assert @@ -915,7 +909,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -934,7 +927,7 @@ // Call TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, - probability, + random.NextDouble(), categories); // Assert @@ -950,7 +943,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -968,7 +960,7 @@ // Call TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, - probability, + random.NextDouble(), categories); // Assert @@ -980,12 +972,33 @@ } [Test] + public void AssembleDetailedAssessmentWithLengthEffect_WithInvalidResultEnumInput_ThrowInvalidEnumArgumentException() + { + // Setup + var random = new Random(39); + using (new AssemblyToolKernelFactoryConfig()) + { + var factory = (TestAssemblyToolKernelFactory) AssemblyToolKernelFactory.Instance; + var calculator = new FailureMechanismSectionAssemblyCalculator(factory); + + // Call + TestDelegate test = () => calculator.AssembleDetailedAssessment((DetailedAssessmentResultType) 99, + random.NextDouble(), + Enumerable.Empty(), + random.NextDouble()); + + // Assert + string expectedMessage = $"The value of argument 'detailedAssessmentResult' (99) is invalid for Enum type '{nameof(DetailedAssessmentResultType)}'."; + string parameterName = TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, expectedMessage).ParamName; + Assert.AreEqual("detailedAssessmentResult", parameterName); + } + } + + [Test] public void AssembleDetailedAssessmentWithLengthEffect_WithInvalidEnumInput_ThrowFailureMechanismSectionAssemblyCalculatorException() { // Setup var random = new Random(39); - double probability = random.NextDouble(); - double n = random.NextDouble(1.0, 10.0); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(), @@ -999,7 +1012,10 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - TestDelegate test = () => calculator.AssembleDetailedAssessment(probability, categories, n); + TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, + random.NextDouble(), + categories, + random.NextDouble(1.0, 10.0)); // Assert var exception = Assert.Throws(test); @@ -1010,6 +1026,39 @@ } [Test] + public void AssembleDetailedAssessmentWithLengthEffect_WithValidInputResultTypeNotAssessed_ReturnsExpectedCategory() + { + // Setup + var random = new Random(39); + var categories = new[] + { + new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), + random.NextDouble(0.6, 1.0), + FailureMechanismSectionAssemblyCategoryGroup.IIv) + }; + + using (new AssemblyToolKernelFactoryConfig()) + { + var factory = (TestAssemblyToolKernelFactory) AssemblyToolKernelFactory.Instance; + FailureMechanismSectionAssemblyKernelStub kernel = factory.LastCreatedFailureMechanismSectionAssemblyKernel; + kernel.FailureMechanismSectionAssemblyCategoryResult = new CalculationOutput( + new FailureMechanismSectionAssemblyCategoryResult(FailureMechanismSectionCategoryGroup.Iv, Probability.NaN)); + + var calculator = new FailureMechanismSectionAssemblyCalculator(factory); + + // Call + FailureMechanismSectionAssembly detailedAssembly = calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.NotAssessed, + random.NextDouble(), + categories, + random.NextDouble(1.0, 10.0)); + + // Assert + Assert.AreEqual(FailureMechanismSectionAssemblyCategoryGroup.VIIv, detailedAssembly.Group); + Assert.AreEqual(0.0, detailedAssembly.Probability); + } + } + + [Test] public void AssembleDetailedAssessmentWithLengthEffect_WithValidInput_InputCorrectlySetToKernel() { // Setup @@ -1033,7 +1082,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - calculator.AssembleDetailedAssessment(probability, categories, n); + calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, probability, categories, n); // Assert Assert.AreEqual(probability, kernel.DetailedAssessmentFailureMechanismFromProbabilityWithLengthEffectInput.Probability); @@ -1052,8 +1101,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); - double n = random.NextDouble(1.0, 10.0); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -1071,7 +1118,10 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - FailureMechanismSectionAssembly assembly = calculator.AssembleDetailedAssessment(probability, categories, n); + FailureMechanismSectionAssembly assembly = calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, + random.NextDouble(), + categories, + random.NextDouble(1.0, 10.0)); // Assert AssertCalculatorOutput(kernel.FailureMechanismSectionAssemblyCategoryResult, assembly); @@ -1083,8 +1133,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); - double n = random.NextDouble(1.0, 10.0); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -1102,7 +1150,10 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - TestDelegate test = () => calculator.AssembleDetailedAssessment(probability, categories, n); + TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, + random.NextDouble(), + categories, + random.NextDouble(1.0, 10.0)); // Assert var exception = Assert.Throws(test); @@ -1117,8 +1168,6 @@ { // Setup var random = new Random(39); - double probability = random.NextDouble(); - double n = random.NextDouble(1.0, 10.0); var categories = new[] { new FailureMechanismSectionAssemblyCategory(random.NextDouble(0.0, 0.5), @@ -1135,7 +1184,10 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - TestDelegate test = () => calculator.AssembleDetailedAssessment(probability, categories, n); + TestDelegate test = () => calculator.AssembleDetailedAssessment(DetailedAssessmentResultType.Probability, + random.NextDouble(), + categories, + random.NextDouble(1.0, 10.0)); // Assert var exception = Assert.Throws(test); Index: Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStubTest.cs =================================================================== diff -u -r9d327503e94b4ecf3dcec82d1479e1fba59faab9 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStubTest.cs (.../FailureMechanismSectionAssemblyCalculatorStubTest.cs) (revision 9d327503e94b4ecf3dcec82d1479e1fba59faab9) +++ Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStubTest.cs (.../FailureMechanismSectionAssemblyCalculatorStubTest.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -294,6 +294,7 @@ // Call FailureMechanismSectionAssembly assembly = calculator.AssembleDetailedAssessment( + random.NextEnumValue(), random.NextDouble(), new FailureMechanismSectionAssemblyCategory[0], random.NextRoundedDouble(1.0, 10.0)); @@ -317,6 +318,7 @@ // Call FailureMechanismSectionAssembly assembly = calculator.AssembleDetailedAssessment( + random.NextEnumValue(), random.NextDouble(), new FailureMechanismSectionAssemblyCategory[0], random.NextRoundedDouble(1.0, 10.0)); @@ -332,14 +334,16 @@ var random = new Random(39); double probability = random.NextDouble(); double n = random.NextRoundedDouble(1.0, 10.0); + var detailedAssessmentResult = random.NextEnumValue(); IEnumerable categoriesInput = Enumerable.Empty(); var calculator = new FailureMechanismSectionAssemblyCalculatorStub(); // Call - calculator.AssembleDetailedAssessment(probability, categoriesInput, n); + calculator.AssembleDetailedAssessment(detailedAssessmentResult, probability, categoriesInput, n); // Assert + Assert.AreEqual(detailedAssessmentResult, calculator.DetailedAssessmentResultInput); Assert.AreEqual(probability, calculator.DetailedAssessmentProbabilityInput); Assert.AreEqual(n, calculator.DetailedAssessmentNInput); @@ -358,6 +362,7 @@ // Call TestDelegate test = () => calculator.AssembleDetailedAssessment( + random.NextEnumValue(), random.NextDouble(), new FailureMechanismSectionAssemblyCategory[0], random.NextRoundedDouble(1.0, 10.0)); Index: Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs =================================================================== diff -u -r9d327503e94b4ecf3dcec82d1479e1fba59faab9 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs (.../FailureMechanismSectionAssemblyCalculatorStub.cs) (revision 9d327503e94b4ecf3dcec82d1479e1fba59faab9) +++ Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs (.../FailureMechanismSectionAssemblyCalculatorStub.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -195,7 +195,8 @@ (DetailedAssessmentAssemblyOutput = new FailureMechanismSectionAssembly(1, FailureMechanismSectionAssemblyCategoryGroup.VIv)); } - public FailureMechanismSectionAssembly AssembleDetailedAssessment(double probability, + public FailureMechanismSectionAssembly AssembleDetailedAssessment(DetailedAssessmentResultType detailedAssessmentResult, + double probability, IEnumerable categories, double n) { @@ -204,6 +205,7 @@ throw new FailureMechanismSectionAssemblyCalculatorException("Message", new Exception()); } + DetailedAssessmentResultInput = detailedAssessmentResult; DetailedAssessmentProbabilityInput = probability; DetailedAssessmentCategoriesInput = categories; DetailedAssessmentNInput = n; Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.cs =================================================================== diff -u -r8717c2a330a44d6abf7a5a329c7c98dfae8fba76 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.cs (.../MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.cs) (revision 8717c2a330a44d6abf7a5a329c7c98dfae8fba76) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Data/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.cs (.../MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -29,6 +29,7 @@ using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Exceptions; using Ringtoets.Common.Data.Probability; +using Ringtoets.Common.Primitives; namespace Ringtoets.MacroStabilityInwards.Data { @@ -122,6 +123,7 @@ failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.SectionLength)); return calculator.AssembleDetailedAssessment( + DetailedAssessmentResultType.Probability, failureMechanismSectionResult.GetDetailedAssessmentProbability(calculationScenarios, failureMechanism, assessmentSection), categories, failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN(failureMechanismSectionResult.Section.Length)); Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactoryTest.cs =================================================================== diff -u -rb29487c198d87b176783f2396c2b59cd76b9f246 -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactoryTest.cs (.../MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactoryTest.cs) (revision b29487c198d87b176783f2396c2b59cd76b9f246) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Data.Test/MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactoryTest.cs (.../MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactoryTest.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -229,28 +229,29 @@ AssemblyCategoriesCalculatorStub categoryCalculator = calculatorFactory.LastCreatedAssemblyCategoriesCalculator; // Call - + MacroStabilityInwardsFailureMechanismSectionResultAssemblyFactory.AssembleDetailedAssembly( sectionResult, calculationScenarios, failureMechanism, assessmentSection); // Assert + Assert.AreEqual(DetailedAssessmentResultType.Probability, calculator.DetailedAssessmentResultInput); Assert.AreEqual(sectionResult.GetDetailedAssessmentProbability( calculationScenarios, failureMechanism, assessmentSection), calculator.DetailedAssessmentProbabilityInput); - Assert.AreEqual(failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN(sectionResult.Section.Length), + Assert.AreEqual(failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN(sectionResult.Section.Length), calculator.DetailedAssessmentNInput); Assert.AreEqual(assessmentSection.FailureMechanismContribution.SignalingNorm, categoryCalculator.SignalingNorm); Assert.AreEqual(assessmentSection.FailureMechanismContribution.LowerLimitNorm, categoryCalculator.LowerLimitNorm); Assert.AreEqual(failureMechanism.Contribution, categoryCalculator.FailureMechanismContribution); Assert.AreEqual(failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.GetN( failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.SectionLength), categoryCalculator.N); - Assert.AreSame(categoryCalculator.FailureMechanismSectionCategoriesOutput, calculator.DetailedAssessmentCategoriesInput); + Assert.AreSame(categoryCalculator.FailureMechanismSectionCategoriesOutput, calculator.DetailedAssessmentCategoriesInput); mocks.VerifyAll(); } } Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanismSectionResultAssemblyFactory.cs =================================================================== diff -u -r67ea037ebc9a3512d7fd4045cd968cddd3e07d4c -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanismSectionResultAssemblyFactory.cs (.../PipingFailureMechanismSectionResultAssemblyFactory.cs) (revision 67ea037ebc9a3512d7fd4045cd968cddd3e07d4c) +++ Ringtoets/Piping/src/Ringtoets.Piping.Data/PipingFailureMechanismSectionResultAssemblyFactory.cs (.../PipingFailureMechanismSectionResultAssemblyFactory.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -29,7 +29,6 @@ using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Exceptions; using Ringtoets.Common.Data.Probability; -using Ringtoets.Common.Primitives; namespace Ringtoets.Piping.Data { @@ -122,6 +121,7 @@ failureMechanism.PipingProbabilityAssessmentInput.GetN(failureMechanism.PipingProbabilityAssessmentInput.SectionLength)); return calculator.AssembleDetailedAssessment( + failureMechanismSectionResult.DetailedAssessmentResult, failureMechanismSectionResult.GetDetailedAssessmentProbability(calculationScenarios, failureMechanism, assessmentSection), categories, failureMechanism.PipingProbabilityAssessmentInput.GetN(failureMechanismSectionResult.Section.Length)); Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismSectionResultAssemblyFactoryTest.cs =================================================================== diff -u -r67ea037ebc9a3512d7fd4045cd968cddd3e07d4c -rf16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd --- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismSectionResultAssemblyFactoryTest.cs (.../PipingFailureMechanismSectionResultAssemblyFactoryTest.cs) (revision 67ea037ebc9a3512d7fd4045cd968cddd3e07d4c) +++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/PipingFailureMechanismSectionResultAssemblyFactoryTest.cs (.../PipingFailureMechanismSectionResultAssemblyFactoryTest.cs) (revision f16e1fa0ee4ca929195c9e1bb77eb2e522ffd0bd) @@ -251,6 +251,7 @@ assessmentSection); // Assert + Assert.AreEqual(sectionResult.DetailedAssessmentResult, calculator.DetailedAssessmentResultInput); Assert.AreEqual(sectionResult.GetDetailedAssessmentProbability( calculationScenarios, failureMechanism,