/// <summary> /// Returns a collection of modified <see cref="StabilityPointStructure"/> entities, which all differ /// except for their id. /// </summary> /// <param name="targetName">The name of the target to test while using the test case source.</param> /// <param name="testResultDescription">A description of the result of the test while using the test case source.</param> /// <returns>The collection of test case data.</returns> /// <example> /// <code> /// [TestCaseSource(typeof(StabilityPointStructurePermutationHelper), /// nameof(StabilityPointStructurePermutationHelper.DifferentStabilityPointStructuresWithSameId), /// new object[] /// { /// "TargetMethodName", /// "TestResult" /// })] /// </code> /// </example> public static IEnumerable <TestCaseData> DifferentStabilityPointStructuresWithSameId(string targetName, string testResultDescription) { string referenceStructureId = new TestStabilityPointStructure().Id; var testCaseData = new List <TestCaseData> { new TestCaseData(new TestStabilityPointStructure(referenceStructureId, "Different name")) .SetName($"{targetName}_DifferentName_{testResultDescription}"), new TestCaseData(new TestStabilityPointStructure(new Point2D(1, 1), referenceStructureId)) .SetName($"{targetName}_DifferentLocation_{testResultDescription}") }; testCaseData.AddRange(DifferentStabilityPointStructuresWithSameIdNameAndLocation(targetName, testResultDescription)); return(testCaseData); }
private static StabilityPointStructure.ConstructionProperties CreateTestStabilityPointStructureConstructionProperties() { var referenceStructure = new TestStabilityPointStructure(); return(new StabilityPointStructure.ConstructionProperties { Name = referenceStructure.Name, Id = referenceStructure.Id, Location = referenceStructure.Location, StorageStructureArea = { Mean = referenceStructure.StorageStructureArea.Mean, CoefficientOfVariation = referenceStructure.StorageStructureArea.CoefficientOfVariation }, AllowedLevelIncreaseStorage = { Mean = referenceStructure.AllowedLevelIncreaseStorage.Mean, StandardDeviation = referenceStructure.AllowedLevelIncreaseStorage.StandardDeviation }, WidthFlowApertures = { Mean = referenceStructure.WidthFlowApertures.Mean, StandardDeviation = referenceStructure.WidthFlowApertures.StandardDeviation }, InsideWaterLevel = { Mean = referenceStructure.InsideWaterLevel.Mean, StandardDeviation = referenceStructure.InsideWaterLevel.StandardDeviation }, ThresholdHeightOpenWeir = { Mean = referenceStructure.ThresholdHeightOpenWeir.Mean, StandardDeviation = referenceStructure.ThresholdHeightOpenWeir.StandardDeviation }, CriticalOvertoppingDischarge = { Mean = referenceStructure.CriticalOvertoppingDischarge.Mean, CoefficientOfVariation = referenceStructure.CriticalOvertoppingDischarge.CoefficientOfVariation }, FlowWidthAtBottomProtection = { Mean = referenceStructure.FlowWidthAtBottomProtection.Mean, StandardDeviation = referenceStructure.FlowWidthAtBottomProtection.StandardDeviation }, ConstructiveStrengthLinearLoadModel = { Mean = referenceStructure.ConstructiveStrengthLinearLoadModel.Mean, CoefficientOfVariation = referenceStructure.ConstructiveStrengthLinearLoadModel.CoefficientOfVariation }, ConstructiveStrengthQuadraticLoadModel = { Mean = referenceStructure.ConstructiveStrengthQuadraticLoadModel.Mean, CoefficientOfVariation = referenceStructure.ConstructiveStrengthQuadraticLoadModel.CoefficientOfVariation }, BankWidth = { Mean = referenceStructure.BankWidth.Mean, StandardDeviation = referenceStructure.BankWidth.StandardDeviation }, InsideWaterLevelFailureConstruction = { Mean = referenceStructure.InsideWaterLevelFailureConstruction.Mean, StandardDeviation = referenceStructure.InsideWaterLevelFailureConstruction.StandardDeviation }, EvaluationLevel = referenceStructure.EvaluationLevel, LevelCrestStructure = { Mean = referenceStructure.LevelCrestStructure.Mean, StandardDeviation = referenceStructure.LevelCrestStructure.StandardDeviation }, VerticalDistance = referenceStructure.VerticalDistance, FailureProbabilityRepairClosure = referenceStructure.FailureProbabilityRepairClosure, FailureCollisionEnergy = { Mean = referenceStructure.FailureCollisionEnergy.Mean, CoefficientOfVariation = referenceStructure.FailureCollisionEnergy.CoefficientOfVariation }, ShipMass = { Mean = referenceStructure.ShipMass.Mean, CoefficientOfVariation = referenceStructure.ShipMass.CoefficientOfVariation }, ShipVelocity = { Mean = referenceStructure.ShipVelocity.Mean, CoefficientOfVariation = referenceStructure.ShipVelocity.CoefficientOfVariation }, LevellingCount = referenceStructure.LevellingCount, ProbabilityCollisionSecondaryStructure = referenceStructure.ProbabilityCollisionSecondaryStructure, FlowVelocityStructureClosable = { Mean = referenceStructure.FlowVelocityStructureClosable.Mean, CoefficientOfVariation = referenceStructure.FlowVelocityStructureClosable.CoefficientOfVariation }, StabilityLinearLoadModel = { Mean = referenceStructure.StabilityLinearLoadModel.Mean, CoefficientOfVariation = referenceStructure.StabilityLinearLoadModel.CoefficientOfVariation }, StabilityQuadraticLoadModel = { Mean = referenceStructure.StabilityQuadraticLoadModel.Mean, CoefficientOfVariation = referenceStructure.StabilityQuadraticLoadModel.CoefficientOfVariation }, AreaFlowApertures = { Mean = referenceStructure.AreaFlowApertures.Mean, StandardDeviation = referenceStructure.AreaFlowApertures.StandardDeviation }, InflowModelType = referenceStructure.InflowModelType }); }