public void Constructor_WithSoilLayerData_ExpectedValues() { // Setup var soilLayerData = new MacroStabilityInwardsSoilLayerData { MaterialName = "Sand", Color = Color.Black, IsAquifer = true, AbovePhreaticLevel = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)1.0, Mean = (RoundedDouble)1.0, Shift = (RoundedDouble)0.5 }, BelowPhreaticLevel = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)2.0, Mean = (RoundedDouble)2.0, Shift = (RoundedDouble)1.0 }, ShearStrengthModel = MacroStabilityInwardsShearStrengthModel.CPhi, ShearStrengthRatio = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)3.0, Mean = (RoundedDouble)3.0 }, Cohesion = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)4.0, Mean = (RoundedDouble)4.0 }, FrictionAngle = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)5.0, Mean = (RoundedDouble)5.0 }, StrengthIncreaseExponent = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)6.0, Mean = (RoundedDouble)6.0 }, UsePop = true, Pop = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)7.0, Mean = (RoundedDouble)7.0 } }; // Call var formattedSoilLayerDataRow = new MacroStabilityInwardsFormattedSoilLayerDataRow(soilLayerData); // Assert TestHelper.AssertTypeConverter <MacroStabilityInwardsFormattedSoilLayerDataRow, EnumTypeConverter>( nameof(MacroStabilityInwardsFormattedSoilLayerDataRow.ShearStrengthModel)); Assert.AreEqual(soilLayerData.MaterialName, formattedSoilLayerDataRow.MaterialName); Assert.AreEqual(soilLayerData.Color, formattedSoilLayerDataRow.Color); Assert.AreEqual(soilLayerData.IsAquifer, formattedSoilLayerDataRow.IsAquifer); Assert.AreEqual("1,00 (Verwachtingswaarde = 1,00, Variatiecoëfficiënt = 1,00, Verschuiving = 0,50)", formattedSoilLayerDataRow.AbovePhreaticLevel); Assert.AreEqual("2,00 (Verwachtingswaarde = 2,00, Variatiecoëfficiënt = 2,00, Verschuiving = 1,00)", formattedSoilLayerDataRow.BelowPhreaticLevel); Assert.AreEqual(soilLayerData.ShearStrengthModel, formattedSoilLayerDataRow.ShearStrengthModel); Assert.AreEqual("0,08 (Verwachtingswaarde = 3,00, Variatiecoëfficiënt = 3,00)", formattedSoilLayerDataRow.ShearStrengthRatio); Assert.AreEqual("0,06 (Verwachtingswaarde = 4,00, Variatiecoëfficiënt = 4,00)", formattedSoilLayerDataRow.Cohesion); Assert.AreEqual("0,05 (Verwachtingswaarde = 5,00, Variatiecoëfficiënt = 5,00)", formattedSoilLayerDataRow.FrictionAngle); Assert.AreEqual("0,04 (Verwachtingswaarde = 6,00, Variatiecoëfficiënt = 6,00)", formattedSoilLayerDataRow.StrengthIncreaseExponent); Assert.AreEqual(soilLayerData.UsePop, formattedSoilLayerDataRow.UsePop); Assert.AreEqual("0,04 (Verwachtingswaarde = 7,00, Variatiecoëfficiënt = 7,00)", formattedSoilLayerDataRow.Pop); }
public void Constructor_WithSoilLayerDataEmptyAndNaN_ExpectedValues() { // Setup var soilLayerData = new MacroStabilityInwardsSoilLayerData { MaterialName = string.Empty, Color = Color.Empty, IsAquifer = true, AbovePhreaticLevel = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, BelowPhreaticLevel = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, ShearStrengthModel = MacroStabilityInwardsShearStrengthModel.CPhi, ShearStrengthRatio = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, Cohesion = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, FrictionAngle = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, StrengthIncreaseExponent = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN }, UsePop = true, Pop = new VariationCoefficientLogNormalDistribution { CoefficientOfVariation = (RoundedDouble)double.NaN, Mean = (RoundedDouble)double.NaN } }; // Call var formattedSoilLayerDataRow = new MacroStabilityInwardsFormattedSoilLayerDataRow(soilLayerData); // Assert TestHelper.AssertTypeConverter <MacroStabilityInwardsFormattedSoilLayerDataRow, EnumTypeConverter>( nameof(MacroStabilityInwardsFormattedSoilLayerDataRow.ShearStrengthModel)); Assert.AreEqual("Onbekend", formattedSoilLayerDataRow.MaterialName); Assert.AreEqual(Color.White, formattedSoilLayerDataRow.Color); Assert.AreEqual(soilLayerData.IsAquifer, formattedSoilLayerDataRow.IsAquifer); Assert.AreEqual("NaN", formattedSoilLayerDataRow.AbovePhreaticLevel); Assert.AreEqual("NaN", formattedSoilLayerDataRow.BelowPhreaticLevel); Assert.AreEqual(soilLayerData.ShearStrengthModel, formattedSoilLayerDataRow.ShearStrengthModel); Assert.AreEqual("NaN", formattedSoilLayerDataRow.ShearStrengthRatio); Assert.AreEqual("NaN", formattedSoilLayerDataRow.Cohesion); Assert.AreEqual("NaN", formattedSoilLayerDataRow.FrictionAngle); Assert.AreEqual("NaN", formattedSoilLayerDataRow.StrengthIncreaseExponent); Assert.AreEqual(soilLayerData.UsePop, formattedSoilLayerDataRow.UsePop); Assert.AreEqual("NaN", formattedSoilLayerDataRow.Pop); }