// Copyright (C) Stichting Deltares 2017. All rights reserved. // // This file is part of Ringtoets. // // Ringtoets is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . // // All names, logos, and references to "Deltares" are registered trademarks of // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. using Ringtoets.Common.Data.Hydraulics; namespace Ringtoets.Common.Data.TestUtil { /// /// Class that creates simple instances of , that /// can be used during testing. /// public class TestHydraulicBoundaryLocation : HydraulicBoundaryLocation { /// /// Creates a new instance of /// with the given name. /// /// The name for the . public TestHydraulicBoundaryLocation(string name) : base(0, name, 0, 0) {} /// /// Creates a new instance of . /// public TestHydraulicBoundaryLocation() : this(null, null) {} /// /// Creates a new instance of with /// set. /// /// The design water level result to set in the output. /// The wave height result to set in the output. private TestHydraulicBoundaryLocation(double? designWaterLevel, double? waveHeight) : this(string.Empty) { if (designWaterLevel.HasValue) { DesignWaterLevelCalculation.Output = new HydraulicBoundaryLocationOutput( designWaterLevel.Value, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged, null); } if (waveHeight.HasValue) { WaveHeightCalculation.Output = new HydraulicBoundaryLocationOutput( waveHeight.Value, 0, 0, 0, 0, CalculationConvergence.CalculatedConverged, null); } } /// /// Creates a new instance of with /// set for /// /// and . /// /// A new . public static TestHydraulicBoundaryLocation CreateFullyCalculated() { return new TestHydraulicBoundaryLocation(4.5, 5.5); } /// /// Creates a new instance of with /// set for /// . /// /// The design water level result to set in the output. /// A new . public static TestHydraulicBoundaryLocation CreateDesignWaterLevelCalculated(double designWaterLevel) { return new TestHydraulicBoundaryLocation(designWaterLevel, null); } /// /// Creates a new instance of with /// set for /// . /// /// The wave height result to set in the output. /// A new . public static TestHydraulicBoundaryLocation CreateWaveHeightCalculated(double waveHeight) { return new TestHydraulicBoundaryLocation(null, waveHeight); } } }