public void CreateForResultWithProfileAndSectionProbabilities_WithValidResult_ReturnsExpectedFailureMechanismSectionAssembly() { // Setup var random = new Random(21); double profileProbability = random.NextDouble(0.0001, 0.001); double sectionProbability = random.NextDouble(0.0, 0.01); EInterpretationCategory category = random.NextEnumValue(new[] { EInterpretationCategory.III, EInterpretationCategory.II, EInterpretationCategory.I, EInterpretationCategory.Zero, EInterpretationCategory.IMin, EInterpretationCategory.IIMin, EInterpretationCategory.IIIMin }); var result = new ResultWithProfileAndSectionProbabilities( new Probability(profileProbability), new Probability(sectionProbability)); // Call FailureMechanismSectionAssemblyResult createdAssemblyResult = FailureMechanismSectionAssemblyResultCreator.Create(result, category); // Assert Assert.AreEqual(profileProbability, createdAssemblyResult.ProfileProbability); Assert.AreEqual(sectionProbability, createdAssemblyResult.SectionProbability); Assert.AreEqual(result.LengthEffectFactor, createdAssemblyResult.N); Assert.AreEqual(FailureMechanismSectionAssemblyGroupConverter.ConvertTo(category), createdAssemblyResult.FailureMechanismSectionAssemblyGroup); }
public void CreateForProbabilityAndCategory_WithValidData_ReturnsExpectedFailureMechanismSectionAssembly() { // Setup var random = new Random(21); double sectionProbability = random.NextDouble(); var category = random.NextEnumValue <EInterpretationCategory>(); // Call FailureMechanismSectionAssemblyResult result = FailureMechanismSectionAssemblyResultCreator.Create( new Probability(sectionProbability), category); // Assert Assert.AreEqual(sectionProbability, result.ProfileProbability); Assert.AreEqual(sectionProbability, result.SectionProbability); Assert.AreEqual(1.0, result.N); Assert.AreEqual(FailureMechanismSectionAssemblyGroupConverter.ConvertTo(category), result.FailureMechanismSectionAssemblyGroup); }
/// <summary> /// Creates a <see cref="ResultWithProfileAndSectionProbabilities"/> based on <paramref name="result"/>. /// </summary> /// <param name="result">The <see cref="FailureMechanismSectionAssemblyResult"/> to create the /// <see cref="ResultWithProfileAndSectionProbabilities"/> with.</param> /// <returns>A <see cref="ResultWithProfileAndSectionProbabilities"/>.</returns> /// <exception cref="ArgumentNullException">Thrown when <paramref name="result"/> is <c>null</c>.</exception> public static ResultWithProfileAndSectionProbabilities CreateResultWithProfileAndSectionProbabilities(FailureMechanismSectionAssemblyResult result) { if (result == null) { throw new ArgumentNullException(nameof(result)); } return(new ResultWithProfileAndSectionProbabilities( AssemblyCalculatorInputCreator.CreateProbability(result.ProfileProbability), AssemblyCalculatorInputCreator.CreateProbability(result.SectionProbability))); }