Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 private static void GenerateStabilityStoneCoverCalculations(IEnumerable <HydraulicBoundaryLocation> hydraulicBoundaryLocations,
                                                             List <ICalculationBase> calculationCollection,
                                                             NormativeProbabilityType normativeProbabilityType)
 {
     StabilityStoneCoverCalculationConfigurationHelper.AddCalculationsFromLocations(
         hydraulicBoundaryLocations,
         calculationCollection,
         normativeProbabilityType);
 }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
        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);
        }