public void Constructor_NoGeneralResult_PropertiesHaveExpectedAttributesValues() { // Setup PartialProbabilisticSubMechanismPipingOutput output = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(null); // Call var properties = new ProbabilisticSubMechanismPipingOutputProperties(output); // Assert PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); Assert.AreEqual(2, dynamicProperties.Count); PropertyDescriptor probabilityProperty = dynamicProperties[probabilityPropertyIndex]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(probabilityProperty, resultCategoryName, "Faalkans [1/jaar]", "De kans dat het faalmechanisme optreedt voor deze berekening.", true); PropertyDescriptor reliabilityProperty = dynamicProperties[reliabilityPropertyIndex]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(reliabilityProperty, resultCategoryName, "Betrouwbaarheidsindex faalkans [-]", "De betrouwbaarheidsindex van de faalkans voor deze berekening.", true); }
public void Constructor_WithData_ExpectedValues() { // Setup PartialProbabilisticSubMechanismPipingOutput output = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(); // Call var properties = new ProbabilisticSubMechanismPipingOutputProperties(output); // Assert Assert.IsInstanceOf <ProbabilisticSubMechanismPipingOutputProperties>(properties); Assert.AreSame(output, properties.Data); }
public void IllustrationPoints_WithoutGeneralResult_ReturnsEmptyTopLevelSubMechanismIllustrationPointPropertiesArray() { // Setup PartialProbabilisticSubMechanismPipingOutput output = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(null); var properties = new ProbabilisticSubMechanismPipingOutputProperties(output); // Call TopLevelSubMechanismIllustrationPointProperties[] illustrationPoints = properties.IllustrationPoints; // Assert CollectionAssert.IsEmpty(illustrationPoints); }
public void Constructor_ExpectedValues(bool withIllustrationPoints) { // Setup var random = new Random(39); double reliability = random.NextDouble(); GeneralResult <TopLevelSubMechanismIllustrationPoint> generalResult = withIllustrationPoints ? new TestGeneralResultSubMechanismIllustrationPoint() : null; // Call var partialProbabilisticPipingOutput = new PartialProbabilisticSubMechanismPipingOutput(reliability, generalResult); // Assert Assert.IsInstanceOf <PartialProbabilisticPipingOutput <TopLevelSubMechanismIllustrationPoint> >(partialProbabilisticPipingOutput); Assert.AreEqual(reliability, partialProbabilisticPipingOutput.Reliability); Assert.AreEqual(withIllustrationPoints, partialProbabilisticPipingOutput.HasGeneralResult); Assert.AreSame(generalResult, partialProbabilisticPipingOutput.GeneralResult); }
public void GetProperties_WithData_ReturnExpectedValues() { // Setup PartialProbabilisticSubMechanismPipingOutput output = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(); // Call var properties = new ProbabilisticSubMechanismPipingOutputProperties(output); // Assert Assert.AreEqual(ProbabilityFormattingHelper.Format(StatisticsConverter.ReliabilityToProbability(output.Reliability)), properties.Probability); Assert.AreEqual(output.Reliability, properties.Reliability, properties.Reliability.GetAccuracy()); GeneralResult <TopLevelSubMechanismIllustrationPoint> generalResult = output.GeneralResult; CollectionAssert.AreEqual(generalResult.Stochasts, properties.AlphaValues); CollectionAssert.AreEqual(generalResult.Stochasts, properties.Durations); CollectionAssert.AreEqual(generalResult.TopLevelIllustrationPoints, properties.IllustrationPoints.Select(ip => ip.Data)); Assert.AreEqual(generalResult.GoverningWindDirection.Name, properties.WindDirection); }
public void Create_CalculationWithOutputWithSubMechanismIllustrationPoints_ReturnEntityWithOutputAndGeneralResult() { // Setup PartialProbabilisticSubMechanismPipingOutput profileSpecificOutput = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(); PartialProbabilisticSubMechanismPipingOutput sectionSpecificOutput = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(); var output = new ProbabilisticPipingOutput(profileSpecificOutput, sectionSpecificOutput); // Call ProbabilisticPipingCalculationOutputEntity entity = output.Create(); // Assert Assert.AreEqual(output.ProfileSpecificOutput.Reliability, entity.ProfileSpecificReliability); Assert.AreEqual(output.SectionSpecificOutput.Reliability, entity.SectionSpecificReliability); GeneralResultEntityTestHelper.AssertGeneralResultPropertyValues( profileSpecificOutput.GeneralResult, entity.GeneralResultSubMechanismIllustrationPointEntity); GeneralResultEntityTestHelper.AssertGeneralResultPropertyValues( sectionSpecificOutput.GeneralResult, entity.GeneralResultSubMechanismIllustrationPointEntity1); Assert.IsNull(entity.GeneralResultFaultTreeIllustrationPointEntity); Assert.IsNull(entity.GeneralResultFaultTreeIllustrationPointEntity1); }
/// <summary> /// Creates a new instance of <see cref="ProbabilisticSubMechanismPipingOutputProperties"/>. /// </summary> /// <param name="output">The output to show the properties for.</param> /// <exception cref="ArgumentNullException">Thrown when <paramref name="output"/> is <c>null</c>.</exception> public ProbabilisticSubMechanismPipingOutputProperties(PartialProbabilisticSubMechanismPipingOutput output) : base(output) { subMechanismOutput = output; }
public void Constructor_HasGeneralResult_PropertiesHaveExpectedAttributesValues() { // Setup PartialProbabilisticSubMechanismPipingOutput output = PipingTestDataGenerator.GetRandomPartialProbabilisticSubMechanismPipingOutput(); // Call var properties = new ProbabilisticSubMechanismPipingOutputProperties(output); // Assert PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties); Assert.AreEqual(6, dynamicProperties.Count); PropertyDescriptor probabilityProperty = dynamicProperties[probabilityPropertyIndex]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(probabilityProperty, resultCategoryName, "Faalkans [1/jaar]", "De kans dat het faalmechanisme optreedt voor deze berekening.", true); PropertyDescriptor reliabilityProperty = dynamicProperties[reliabilityPropertyIndex]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(reliabilityProperty, resultCategoryName, "Betrouwbaarheidsindex faalkans [-]", "De betrouwbaarheidsindex van de faalkans voor deze berekening.", true); PropertyDescriptor windDirectionProperty = dynamicProperties[windDirectionPropertyIndex]; PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(windDirectionProperty, illustrationPointsCategoryName, "Maatgevende windrichting", "De windrichting waarvoor de berekende betrouwbaarheidsindex het laagst is.", true); PropertyDescriptor alphaValuesProperty = dynamicProperties[alphaValuesPropertyIndex]; TestHelper.AssertTypeConverter <ProbabilisticSubMechanismPipingOutputProperties, KeyValueExpandableArrayConverter>( nameof(ProbabilisticSubMechanismPipingOutputProperties.AlphaValues)); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(alphaValuesProperty, illustrationPointsCategoryName, "Invloedscoëfficiënten [-]", "Berekende invloedscoëfficiënten voor alle beschouwde stochasten.", true); PropertyDescriptor durationsProperty = dynamicProperties[durationsPropertyIndex]; TestHelper.AssertTypeConverter <ProbabilisticSubMechanismPipingOutputProperties, KeyValueExpandableArrayConverter>( nameof(ProbabilisticSubMechanismPipingOutputProperties.Durations)); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(durationsProperty, illustrationPointsCategoryName, "Tijdsduren [uur]", "Tijdsduren waarop de stochasten betrekking hebben.", true); PropertyDescriptor illustrationPointProperty = dynamicProperties[illustrationPointsPropertyIndex]; TestHelper.AssertTypeConverter <ProbabilisticSubMechanismPipingOutputProperties, ExpandableArrayConverter>( nameof(ProbabilisticSubMechanismPipingOutputProperties.IllustrationPoints)); PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(illustrationPointProperty, illustrationPointsCategoryName, "Illustratiepunten", "De lijst van illustratiepunten voor de berekening.", true); }