public void EnumConstructorPassesInputCorrectly(TailorMadeProbabilityCalculationResultGroup resultGroup) { var probabilityAssessmentResult = new TailorMadeProbabilityCalculationResult(resultGroup); Assert.AreEqual(resultGroup, probabilityAssessmentResult.CalculationResultGroup); Assert.AreEqual(default(Probability), probabilityAssessmentResult.Probability); }
/// <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; }
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)); }
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); }