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 ??