/// <summary> /// Creates a semi-probabilistic calculation with valid input. /// </summary> /// <param name="hydraulicBoundaryLocation">The hydraulic boundary location to set to the input.</param> /// <typeparam name="T">The type of semi-probabilistic calculation to create.</typeparam> /// <returns>A new instance of type <typeparamref name="T"/>.</returns> /// <remarks>The caller is responsible for actually providing a valid hydraulic boundary location /// (for instance when it comes to the presence of a normative assessment level).</remarks> /// <exception cref="ArgumentNullException">Throw when <paramref name="hydraulicBoundaryLocation"/> is <c>null</c>.</exception> public static T CreateCalculationWithValidInput <T>(HydraulicBoundaryLocation hydraulicBoundaryLocation) where T : SemiProbabilisticPipingCalculation, new() { if (hydraulicBoundaryLocation == null) { throw new ArgumentNullException(nameof(hydraulicBoundaryLocation)); } return(new T { InputParameters = { DampingFactorExit = { Mean = (RoundedDouble)1.0 }, PhreaticLevelExit = { Mean = (RoundedDouble)2.0 }, SurfaceLine = PipingCalculationTestFactory.GetSurfaceLine(), StochasticSoilProfile = PipingCalculationTestFactory.GetStochasticSoilProfile(), HydraulicBoundaryLocation = hydraulicBoundaryLocation } }); }
public void SetUp() { calculation = PipingCalculationTestFactory.CreateCalculationWithValidInput(new TestHydraulicBoundaryLocation()); testSurfaceLineTopLevel = calculation.InputParameters.SurfaceLine.Points.Max(p => p.Z); }