private static void TestProbabilisticFailureMechanismsResults(BenchmarkTestInput input,
                                                                      BenchmarkTestResult result)
        {
            result.MethodResults.Wbi2B1 = false;
            AssessmentSectionResult assemblerResult = null;

            try
            {
                var assembler = new AssessmentGradeAssembler();
                assemblerResult = assembler.AssembleAssessmentSectionWbi2B1(
                    input.ExpectedFailureMechanismsResults.Select(fmr => fmr.ExpectedCombinedProbability),
                    input.ExpectedAssessmentSectionCategories, false);
            }
            catch (AssemblyException)
            {
                Assert.IsTrue(input.ExpectedSafetyAssessmentAssemblyResult.ExpectedCombinedAssessmentGrade ==
                              EExpectedAssessmentGrade.Exception);
                result.AreEqualAssemblyResultFinalVerdict            = true;
                result.AreEqualAssemblyResultFinalVerdictProbability = true;
                result.MethodResults.Wbi2B1 = true;
                return;
            }

            Assert.IsNotNull(assemblerResult);
            AssertHelper.AssertAreEqualProbabilities(
                input.ExpectedSafetyAssessmentAssemblyResult.ExpectedCombinedProbability,
                new Probability(assemblerResult.FailureProbability));
            Assert.AreEqual(
                input.ExpectedSafetyAssessmentAssemblyResult.ExpectedCombinedAssessmentGrade.ToEAssessmentGrade(),
                assemblerResult.Category);

            result.AreEqualAssemblyResultFinalVerdict            = true;
            result.AreEqualAssemblyResultFinalVerdictProbability = true;
            result.MethodResults.Wbi2B1 = true;
        }
Exemple #2
0
        public void ConstructorPassesArguments()
        {
            Probability      prob  = new Probability(0.000012687423);
            EAssessmentGrade grade = EAssessmentGrade.B;
            var result             = new AssessmentSectionResult(prob, grade);

            Assert.AreEqual(prob, result.FailureProbability);
            Assert.AreEqual(grade, result.Category);
        }