Index: Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.Data/FailureMechanismSectionAssemblyInput.cs =================================================================== diff -u -r0b0576379438cfbcfc61cd80b863db30d494a0bc -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.Data/FailureMechanismSectionAssemblyInput.cs (.../FailureMechanismSectionAssemblyInput.cs) (revision 0b0576379438cfbcfc61cd80b863db30d494a0bc) +++ Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.Data/FailureMechanismSectionAssemblyInput.cs (.../FailureMechanismSectionAssemblyInput.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -8,17 +8,22 @@ /// /// Creates a new instance of . /// + /// The signaling norm. + /// The lower limit norm. /// The indicator whether the section is relevant. /// The initial probability for the profile. /// The initial probability for the section. /// The indicator whether the section needs further analysis. /// The refined probability for the profile. /// The refined probability for the section. - public FailureMechanismSectionAssemblyInput(bool isRelevant, + public FailureMechanismSectionAssemblyInput(double signalingNorm, double lowerLimitNorm, + bool isRelevant, double initialProfileProbability, double initialSectionProbability, bool furtherAnalysisNeeded, double refinedProfileProbability, double refinedSectionProbability) { + SignalingNorm = signalingNorm; + LowerLimitNorm = lowerLimitNorm; IsRelevant = isRelevant; InitialProfileProbability = initialProfileProbability; InitialSectionProbability = initialSectionProbability; @@ -28,6 +33,16 @@ } /// + /// Gets the signaling norm. + /// + public double SignalingNorm { get; } + + /// + /// Gets the lower limit norm. + /// + public double LowerLimitNorm { get; } + + /// /// Gets the indicator whether the section is relevant. /// public bool IsRelevant { get; } Index: Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs =================================================================== diff -u -r36435bdc691d87b9754b6d15bb1ccc0e141f7a76 -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs (.../FailureMechanismSectionAssemblyCalculator.cs) (revision 36435bdc691d87b9754b6d15bb1ccc0e141f7a76) +++ Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/FailureMechanismSectionAssemblyCalculator.cs (.../FailureMechanismSectionAssemblyCalculator.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -54,9 +54,7 @@ this.factory = factory; } - public FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(double signalingNorm, - double lowerLimitNorm, - FailureMechanismSectionAssemblyInput input) + public FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(FailureMechanismSectionAssemblyInput input) { if (input == null) { @@ -67,7 +65,7 @@ { ICategoryLimitsCalculator assemblyCategoriesKernel = factory.CreateAssemblyCategoriesKernel(); CategoriesList categories = assemblyCategoriesKernel.CalculateInterpretationCategoryLimitsWbi03( - new AssessmentSection(CreateProbability(signalingNorm), CreateProbability(lowerLimitNorm))); + new AssessmentSection(CreateProbability(input.SignalingNorm), CreateProbability(input.LowerLimitNorm))); IAssessmentResultsTranslator kernel = factory.CreateFailureMechanismSectionAssemblyKernel(); Index: Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs =================================================================== diff -u -r36435bdc691d87b9754b6d15bb1ccc0e141f7a76 -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs (.../IFailureMechanismSectionAssemblyCalculator.cs) (revision 36435bdc691d87b9754b6d15bb1ccc0e141f7a76) +++ Riskeer/AssemblyTool/src/Riskeer.AssemblyTool.KernelWrapper/Calculators/Assembly/IFailureMechanismSectionAssemblyCalculator.cs (.../IFailureMechanismSectionAssemblyCalculator.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -32,15 +32,11 @@ /// /// Assembles the failure mechanism section based on the input. /// - /// The signaling norm to assemble with. - /// The lower limit norm to assemble with. /// The to assemble with. /// A . /// Thrown when is null. /// Thrown when /// an error occurs while assembling. - FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(double signalingNorm, - double lowerLimitNorm, - FailureMechanismSectionAssemblyInput input); + FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(FailureMechanismSectionAssemblyInput input); } } \ No newline at end of file Index: Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.Data.Test/FailureMechanismSectionAssemblyInputTest.cs =================================================================== diff -u -r0b0576379438cfbcfc61cd80b863db30d494a0bc -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.Data.Test/FailureMechanismSectionAssemblyInputTest.cs (.../FailureMechanismSectionAssemblyInputTest.cs) (revision 0b0576379438cfbcfc61cd80b863db30d494a0bc) +++ Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.Data.Test/FailureMechanismSectionAssemblyInputTest.cs (.../FailureMechanismSectionAssemblyInputTest.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -12,6 +12,8 @@ { // Setup var random = new Random(21); + double signalingNorm = random.NextDouble(); + double lowerLimitNorm = random.NextDouble(); bool isRelevant = random.NextBoolean(); double profileProbability = random.NextDouble(); double sectionProbability = random.NextDouble(); @@ -20,12 +22,16 @@ double refinedSectionProbability = random.NextDouble(); // Call - var input = new FailureMechanismSectionAssemblyInput(isRelevant, + var input = new FailureMechanismSectionAssemblyInput(signalingNorm, lowerLimitNorm, + isRelevant, profileProbability, sectionProbability, needsRefinement, refinedProfileProbability, refinedSectionProbability); // Assert + Assert.AreEqual(signalingNorm, input.SignalingNorm); + Assert.AreEqual(lowerLimitNorm, input.LowerLimitNorm); + Assert.AreEqual(isRelevant, input.IsRelevant); Assert.AreEqual(profileProbability, input.InitialProfileProbability); Assert.AreEqual(sectionProbability, input.InitialSectionProbability); Index: Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs =================================================================== diff -u -r57771831fd6bae482a362cb0687e82b08c62b575 -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs (.../FailureMechanismSectionAssemblyCalculatorTest.cs) (revision 57771831fd6bae482a362cb0687e82b08c62b575) +++ Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.Test/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorTest.cs (.../FailureMechanismSectionAssemblyCalculatorTest.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -82,7 +82,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(kernelFactory); // Call - void Call() => calculator.AssembleFailureMechanismSection(random.NextDouble(), random.NextDouble(), null); + void Call() => calculator.AssembleFailureMechanismSection(null); // Assert Assert.That(Call, Throws.TypeOf() @@ -94,11 +94,12 @@ public void AssembleFailureMechanismSection_WithValidInput_InputCorrectlySendToKernel() { // Setup - const double lowerLimitNorm = 0.001; const double signalingNorm = 0.0001; + const double lowerLimitNorm = 0.001; var random = new Random(21); - var input = new FailureMechanismSectionAssemblyInput(random.NextBoolean(), + var input = new FailureMechanismSectionAssemblyInput(signalingNorm, lowerLimitNorm, + random.NextBoolean(), random.NextDouble(), random.NextDouble(), random.NextBoolean(), random.NextDouble(), random.NextDouble()); @@ -117,7 +118,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - calculator.AssembleFailureMechanismSection(signalingNorm, lowerLimitNorm, input); + calculator.AssembleFailureMechanismSection(input); // Assert AssessmentSection assessmentSection = categoryLimitsKernel.AssessmentSection; @@ -158,7 +159,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - FailureMechanismSectionAssemblyResult result = calculator.AssembleFailureMechanismSection(signalingNorm, lowerLimitNorm, input); + FailureMechanismSectionAssemblyResult result = calculator.AssembleFailureMechanismSection(input); // Assert Assert.IsTrue(categoryLimitsKernel.Calculated); @@ -196,7 +197,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - void Call() => calculator.AssembleFailureMechanismSection(signalingNorm, lowerLimitNorm, input); + void Call() => calculator.AssembleFailureMechanismSection(input); // Assert var exception = Assert.Throws(Call); @@ -227,7 +228,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - void Call() => calculator.AssembleFailureMechanismSection(signalingNorm, lowerLimitNorm, input); + void Call() => calculator.AssembleFailureMechanismSection(input); // Assert var exception = Assert.Throws(Call); @@ -258,7 +259,7 @@ var calculator = new FailureMechanismSectionAssemblyCalculator(factory); // Call - void Call() => calculator.AssembleFailureMechanismSection(signalingNorm, lowerLimitNorm, input); + void Call() => calculator.AssembleFailureMechanismSection(input); // Assert var exception = Assert.Throws(Call); @@ -272,8 +273,12 @@ private static FailureMechanismSectionAssemblyInput CreateFailureMechanismSectionAssemblyInput() { + const double lowerLimitNorm = 0.001; + const double signalingNorm = 0.0001; + var random = new Random(21); - return new FailureMechanismSectionAssemblyInput(random.NextBoolean(), + return new FailureMechanismSectionAssemblyInput(signalingNorm, lowerLimitNorm, + random.NextBoolean(), random.NextDouble(), random.NextDouble(), random.NextBoolean(), random.NextDouble(), random.NextDouble()); Index: Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs =================================================================== diff -u -rb2ec6debaaff959cd90c3aed1fd579312ea3b52c -r5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa --- Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs (.../FailureMechanismSectionAssemblyCalculatorStub.cs) (revision b2ec6debaaff959cd90c3aed1fd579312ea3b52c) +++ Riskeer/AssemblyTool/test/Riskeer.AssemblyTool.KernelWrapper.TestUtil/Calculators/Assembly/FailureMechanismSectionAssemblyCalculatorStub.cs (.../FailureMechanismSectionAssemblyCalculatorStub.cs) (revision 5f7afeb5da4572e7e4c9932d7eecb5fac86f44aa) @@ -55,16 +55,13 @@ /// public FailureMechanismSectionAssemblyResult FailureMechanismSectionAssemblyResultOutput { get; set; } - public FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(double signalingNorm, double lowerLimitNorm, - FailureMechanismSectionAssemblyInput input) + public FailureMechanismSectionAssemblyResult AssembleFailureMechanismSection(FailureMechanismSectionAssemblyInput input) { if (ThrowExceptionOnCalculate) { throw new FailureMechanismSectionAssemblyCalculatorException("Message", new Exception()); } - SignalingNorm = signalingNorm; - LowerLimitNorm = lowerLimitNorm; FailureMechanismSectionAssemblyInput = input; return FailureMechanismSectionAssemblyResultOutput ??