public void AddCalculationsFromLocations_MultipleCalculationsEmptyCalculationBase_ReturnsUniquelyNamedCalculationsWithCorrectInputSet( NormativeProbabilityType normativeProbabilityType, WaveConditionsInputWaterLevelType expectedWaveConditionsInputWaterLevelType) { // Setup const string name = "name"; var locations = new[] { new HydraulicBoundaryLocation(1, name, 1, 1), new HydraulicBoundaryLocation(2, name, 2, 2) }; var calculationBases = new List <ICalculationBase>(); // Call StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations(locations, calculationBases, normativeProbabilityType); // Assert Assert.AreEqual(2, calculationBases.Count); var firstCalculation = (StabilityStoneCoverWaveConditionsCalculation)calculationBases.First(); Assert.AreEqual(name, firstCalculation.Name); StabilityStoneCoverWaveConditionsInput firstCalculationInput = firstCalculation.InputParameters; Assert.AreEqual(locations[0], firstCalculationInput.HydraulicBoundaryLocation); Assert.AreEqual(expectedWaveConditionsInputWaterLevelType, firstCalculationInput.WaterLevelType); var secondCalculation = (StabilityStoneCoverWaveConditionsCalculation)calculationBases.ElementAt(1); Assert.AreEqual($"{name} (1)", secondCalculation.Name); StabilityStoneCoverWaveConditionsInput secondCalculationInput = secondCalculation.InputParameters; Assert.AreSame(locations[1], secondCalculationInput.HydraulicBoundaryLocation); Assert.AreEqual(expectedWaveConditionsInputWaterLevelType, secondCalculationInput.WaterLevelType); }
private static void GenerateStabilityStoneCoverCalculations(IEnumerable <HydraulicBoundaryLocation> hydraulicBoundaryLocations, List <ICalculationBase> calculationCollection, NormativeProbabilityType normativeProbabilityType) { StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations( hydraulicBoundaryLocations, calculationCollection, normativeProbabilityType); }
public void AddCalculationsFromLocations_EmptyCollections_ReturnsEmptyList() { // Setup var random = new Random(21); IEnumerable <HydraulicBoundaryLocation> locations = Enumerable.Empty <HydraulicBoundaryLocation>(); var calculationBases = new List <ICalculationBase>(); // Call StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations(locations, calculationBases, random.NextEnumValue <NormativeProbabilityType>()); // Assert CollectionAssert.IsEmpty(calculationBases); }
public void AddCalculationsFromLocations_CalculationsIsNull_ThrowsArgumentNullException() { // Setup var random = new Random(21); IEnumerable <HydraulicBoundaryLocation> locations = Enumerable.Empty <HydraulicBoundaryLocation>(); // Call void Call() => StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations(locations, null, random.NextEnumValue <NormativeProbabilityType>()); // Assert string paramName = Assert.Throws <ArgumentNullException>(Call).ParamName; Assert.AreEqual("calculations", paramName); }
public void AddCalculationsFromLocations_LocationsIsNull_ThrowsArgumentNullException() { // Setup var random = new Random(21); var calculations = new List <ICalculationBase>(); // Call void Call() => StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations(null, calculations, random.NextEnumValue <NormativeProbabilityType>()); // Assert string paramName = Assert.Throws <ArgumentNullException>(Call).ParamName; Assert.AreEqual("locations", paramName); }