public void EnumConstructorPassesInputCorrectly(TailorMadeProbabilityCalculationResultGroup resultGroup)
        {
            var probabilityAssessmentResult = new TailorMadeProbabilityCalculationResult(resultGroup);

            Assert.AreEqual(resultGroup, probabilityAssessmentResult.CalculationResultGroup);
            Assert.AreEqual(default(Probability), probabilityAssessmentResult.Probability);
        }
Esempio n. 2
0
        /// <summary>
        /// Use this constructor for all results except probabilities.
        /// </summary>
        /// <param name="resultGroup">The specified calculation result.</param>
        public TailorMadeProbabilityCalculationResult(TailorMadeProbabilityCalculationResultGroup resultGroup)
        {
            if (resultGroup == TailorMadeProbabilityCalculationResultGroup.Probability)
            {
                throw new AssemblyToolKernelException(ErrorCode.NoProbabilityAllowedInConstructor);
            }

            CalculationResultGroup = resultGroup;
        }
Esempio n. 3
0
        public void TailorMadeAssessmentDirectFailureMechanismsFromProbabilityWithNValueThrowsOnInvalidEnum()
        {
            const TailorMadeProbabilityCalculationResultGroup invalidEnum = (TailorMadeProbabilityCalculationResultGroup)15;
            var input = new TailorMadeCalculationInputFromProbabilityWithLengthEffectFactor(
                new TailorMadeProbabilityCalculationResult(invalidEnum),
                new[]
            {
                new FailureMechanismSectionCategory(FailureMechanismSectionCategoryGroup.Iv, (Probability)0, (Probability)1)
            }, 1.234);

            Assert.Throws <InvalidEnumArgumentException>(() => new FailureMechanismSectionAssemblyCalculator().TailorMadeAssessmentDirectFailureMechanisms(input));
        }
Esempio n. 4
0
        public void TailorMadeAssessmentDirectFailureMechanismsFromProbabilityWithNValueReturnsCorrectCategoryNoProbability(TailorMadeProbabilityCalculationResultGroup resultGroup, FailureMechanismSectionCategoryGroup expectedCategoryGroup, double expectedProbability)
        {
            var input = new TailorMadeCalculationInputFromProbabilityWithLengthEffectFactor(
                new TailorMadeProbabilityCalculationResult(resultGroup),
                new[]
            {
                new FailureMechanismSectionCategory(FailureMechanismSectionCategoryGroup.Iv, (Probability)0, (Probability)1)
            }, 1.234);

            var calculationOutput = new FailureMechanismSectionAssemblyCalculator().TailorMadeAssessmentDirectFailureMechanisms(input);

            Assert.IsNotNull(calculationOutput);
            Assert.IsEmpty(calculationOutput.WarningMessages);
            Assert.IsNotNull(calculationOutput.Result);
            Assert.AreEqual(expectedCategoryGroup, calculationOutput.Result.CategoryGroup);
            Assert.AreEqual(expectedProbability, calculationOutput.Result.EstimatedProbabilityOfFailure);
        }