/// <summary> /// Read the <see cref="HydraulicLocationEntity"/> and use the information to construct a <see cref="HydraulicBoundaryLocation"/>. /// </summary> /// <param name="entity">The <see cref="HydraulicLocationEntity"/> to create <see cref="HydraulicBoundaryLocation"/> for.</param> /// <param name="collector">The object keeping track of read operations.</param> /// <returns>A new <see cref="HydraulicBoundaryLocation"/>.</returns> /// <exception cref="ArgumentNullException">Thrown when any input parameter is <c>null</c>.</exception> internal static HydraulicBoundaryLocation Read(this HydraulicLocationEntity entity, ReadConversionCollector collector) { if (entity == null) { throw new ArgumentNullException(nameof(entity)); } if (collector == null) { throw new ArgumentNullException(nameof(collector)); } if (collector.Contains(entity)) { return(collector.Get(entity)); } var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(entity.LocationId, entity.Name, entity.LocationX.ToNullAsNaN(), entity.LocationY.ToNullAsNaN()); collector.Read(entity, hydraulicBoundaryLocation); return(hydraulicBoundaryLocation); }
public void Create_CalculationWithoutOutput_ReturnsHydraulicLocationCalculationEntity() { // Setup var random = new Random(33); bool shouldIllustrationPointsBeCalculated = random.NextBoolean(); var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var calculation = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) { InputParameters = { ShouldIllustrationPointsBeCalculated = shouldIllustrationPointsBeCalculated }, Output = null }; var registry = new PersistenceRegistry(); var hydraulicLocationEntity = new HydraulicLocationEntity(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call HydraulicLocationCalculationEntity entity = calculation.Create(registry); // Assert Assert.IsNotNull(entity); Assert.AreEqual(Convert.ToByte(shouldIllustrationPointsBeCalculated), entity.ShouldIllustrationPointsBeCalculated); Assert.IsEmpty(entity.HydraulicLocationOutputEntities); }
public void Read_EntityWithHydraulicBoundaryLocationInCollector_CalculationHasAlreadyReadHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var hydraulicLocationEntity = new HydraulicLocationEntity(); var entity = new SemiProbabilisticPipingCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, EntryPointL = 1, ExitPointL = 2, DampingFactorExitMean = 1, AssessmentLevel = 5.81, UseAssessmentLevelManualInput = Convert.ToByte(false), ScenarioContribution = 0 }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call SemiProbabilisticPipingCalculationScenario calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_WithCollectorAndEntitiesWithoutOutput_ReturnsHydraulicBoundaryLocationWithPropertiesSetAndEntityRegistered() { // Setup var random = new Random(21); long testId = random.Next(0, 400); const string testName = "testName"; double x = random.NextDouble(); double y = random.NextDouble(); var entity = new HydraulicLocationEntity { LocationId = testId, Name = testName, LocationX = x, LocationY = y }; var collector = new ReadConversionCollector(); // Call HydraulicBoundaryLocation location = entity.Read(collector); // Assert Assert.IsNotNull(location); Assert.AreEqual(testId, location.Id); Assert.AreEqual(testName, location.Name); Assert.AreEqual(x, location.Location.X, 1e-6); Assert.AreEqual(y, location.Location.Y, 1e-6); Assert.IsTrue(collector.Contains(entity)); }
/// <summary> /// Creates a <see cref="HydraulicLocationEntity"/> based on the information of the <see cref="HydraulicBoundaryLocation"/>. /// </summary> /// <param name="location">The location to create a database entity for.</param> /// <param name="registry">The object keeping track of create operations.</param> /// <param name="order">Index at which this instance resides inside its parent container.</param> /// <returns>A new <see cref="HydraulicLocationEntity"/>.</returns> /// <exception cref="ArgumentNullException">Thrown when <paramref name="registry"/> or <param name="location"></param> /// is <c>null</c>.</exception> internal static HydraulicLocationEntity Create(this HydraulicBoundaryLocation location, PersistenceRegistry registry, int order) { if (location == null) { throw new ArgumentNullException(nameof(location)); } if (registry == null) { throw new ArgumentNullException(nameof(registry)); } if (registry.Contains(location)) { return(registry.Get(location)); } var entity = new HydraulicLocationEntity { LocationId = location.Id, Name = location.Name.DeepClone(), LocationX = location.Location.X.ToNaNAsNull(), LocationY = location.Location.Y.ToNaNAsNull(), Order = order }; registry.Register(entity, location); return(entity); }
public void Read_EntityWithValidValues_SetsCalculationsWithExpectedValues() { // Setup var random = new Random(21); HydraulicLocationEntity hydraulicLocationEntityOne = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var calculationEntityWithoutOutput = new HydraulicLocationCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntityOne, ShouldIllustrationPointsBeCalculated = Convert.ToByte(random.NextBoolean()) }; HydraulicLocationEntity hydraulicLocationEntityTwo = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var calculationEntityWithOutput = new HydraulicLocationCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntityTwo, ShouldIllustrationPointsBeCalculated = Convert.ToByte(random.NextBoolean()), HydraulicLocationOutputEntities = { new HydraulicLocationOutputEntity() } }; var collectionEntity = new HydraulicLocationCalculationCollectionEntity { HydraulicLocationCalculationEntities = { calculationEntityWithoutOutput, calculationEntityWithOutput } }; var hydraulicBoundaryLocationOne = new TestHydraulicBoundaryLocation("1"); var hydraulicBoundaryLocationTwo = new TestHydraulicBoundaryLocation("2"); var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntityOne, hydraulicBoundaryLocationOne); collector.Read(hydraulicLocationEntityTwo, hydraulicBoundaryLocationTwo); var calculationOne = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocationOne); var calculationTwo = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocationTwo); // Call collectionEntity.Read(new[] { calculationOne, calculationTwo }, collector); // Assert Assert.AreEqual(Convert.ToBoolean(calculationEntityWithoutOutput.ShouldIllustrationPointsBeCalculated), calculationOne.InputParameters.ShouldIllustrationPointsBeCalculated); Assert.IsNull(calculationOne.Output); Assert.AreEqual(Convert.ToBoolean(calculationEntityWithOutput.ShouldIllustrationPointsBeCalculated), calculationTwo.InputParameters.ShouldIllustrationPointsBeCalculated); Assert.IsNotNull(calculationTwo.Output); }
public void Read_CollectorIsNull_ThrowArgumentNullException() { // Setup var entity = new HydraulicLocationEntity(); // Call TestDelegate call = () => entity.Read(null); // Assert string paramName = Assert.Throws <ArgumentNullException>(call).ParamName; Assert.AreEqual("collector", paramName); }
public void Create_HydraulicBoundaryLocationSavedMultipleTimes_ReturnSameEntity() { // Setup var hydraulicBoundaryLocations = new HydraulicBoundaryLocation(1, "A", 1.1, 2.2); var registry = new PersistenceRegistry(); // Call HydraulicLocationEntity entity1 = hydraulicBoundaryLocations.Create(registry, 0); HydraulicLocationEntity entity2 = hydraulicBoundaryLocations.Create(registry, 1); // Assert Assert.AreSame(entity1, entity2); }
public void Create_StringPropertiesDoNotShareReferences() { // Setup const string testName = "original name"; var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, testName, 0, 0); var registry = new PersistenceRegistry(); // Call HydraulicLocationEntity entity = hydraulicBoundaryLocation.Create(registry, 0); // Assert Assert.IsNotNull(entity); Assert.AreNotSame(testName, entity.Name, "To create stable binary representations/fingerprints, it's really important that strings are not shared."); Assert.AreEqual(testName, entity.Name); }
public void Read_EntityWithHydraulicBoundaryLocationNotYetInCollector_CalculationWithCreatedHydraulicBoundaryLocationAndRegisteredNewEntities() { // Setup HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var entity = new WaveImpactAsphaltCoverWaveConditionsCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity }; var collector = new ReadConversionCollector(); // Call entity.Read(collector); // Assert Assert.IsTrue(collector.Contains(hydraulicLocationEntity)); }
public void Read_SameHydraulicLocationEntityTwice_ReturnSameHydraulicBoundaryLocation() { // Setup var entity = new HydraulicLocationEntity { Name = "A" }; var collector = new ReadConversionCollector(); // Call HydraulicBoundaryLocation location1 = entity.Read(collector); HydraulicBoundaryLocation location2 = entity.Read(collector); // Assert Assert.AreSame(location1, location2); }
public void Create_WithValidCollection_ReturnsEntityWithExpectedResults() { // Setup var random = new Random(21); int order = random.Next(); var calculationType = random.NextEnumValue <HydraulicBoundaryLocationCalculationType>(); var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var calculation = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) { InputParameters = { ShouldIllustrationPointsBeCalculated = random.NextBoolean() } }; var calculations = new HydraulicBoundaryLocationCalculationsForTargetProbability(random.NextDouble(0, 0.1)) { HydraulicBoundaryLocationCalculations = { calculation } }; var hydraulicLocationEntity = new HydraulicLocationEntity(); var registry = new PersistenceRegistry(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call HydraulicLocationCalculationForTargetProbabilityCollectionEntity entity = calculations.Create(calculationType, order, registry); // Assert Assert.IsNotNull(entity); Assert.AreEqual(order, entity.Order); Assert.AreEqual(calculations.TargetProbability, entity.TargetProbability); Assert.AreEqual(Convert.ToByte(calculationType), entity.HydraulicBoundaryLocationCalculationType); HydraulicLocationCalculationEntity hydraulicLocationCalculationEntity = entity.HydraulicLocationCalculationEntities.Single(); Assert.AreSame(hydraulicLocationEntity, hydraulicLocationCalculationEntity.HydraulicLocationEntity); Assert.AreEqual(Convert.ToByte(calculation.InputParameters.ShouldIllustrationPointsBeCalculated), hydraulicLocationCalculationEntity.ShouldIllustrationPointsBeCalculated); CollectionAssert.IsEmpty(hydraulicLocationCalculationEntity.HydraulicLocationOutputEntities); }
public void Create_CalculationWithAlreadyCreatedHydraulicBoundaryLocation_ReturnsEntityWithHydraulicBoundaryLocationEntity() { // Setup var hydraulicLocation = new TestHydraulicBoundaryLocation(); var registry = new PersistenceRegistry(); var hydraulicLocationEntity = new HydraulicLocationEntity(); registry.Register(hydraulicLocationEntity, hydraulicLocation); var calculation = new HydraulicBoundaryLocationCalculation(hydraulicLocation); // Call HydraulicLocationCalculationEntity entity = calculation.Create(registry); // Assert Assert.IsNotNull(entity); Assert.AreSame(hydraulicLocationEntity, entity.HydraulicLocationEntity); }
public void Create_CalculationWithOutput_ReturnsHydraulicLocationCalculationEntityWithOutput() { // Setup var random = new Random(33); bool shouldIllustrationPointsBeCalculated = random.NextBoolean(); var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var calculation = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) { InputParameters = { ShouldIllustrationPointsBeCalculated = shouldIllustrationPointsBeCalculated }, Output = new HydraulicBoundaryLocationCalculationOutput( random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextDouble(), random.NextEnumValue <CalculationConvergence>(), null) }; var registry = new PersistenceRegistry(); var hydraulicLocationEntity = new HydraulicLocationEntity(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call HydraulicLocationCalculationEntity entity = calculation.Create(registry); // Assert Assert.IsNotNull(entity); Assert.AreEqual(Convert.ToByte(shouldIllustrationPointsBeCalculated), entity.ShouldIllustrationPointsBeCalculated); HydraulicLocationOutputEntity outputEntity = entity.HydraulicLocationOutputEntities.Single(); HydraulicBoundaryLocationCalculationOutput expectedOutput = calculation.Output; Assert.AreEqual(expectedOutput.CalculatedProbability, outputEntity.CalculatedProbability); Assert.AreEqual(expectedOutput.CalculatedReliability, outputEntity.CalculatedReliability); Assert.AreEqual(expectedOutput.TargetReliability, outputEntity.TargetReliability); Assert.AreEqual(expectedOutput.TargetProbability, outputEntity.TargetProbability); Assert.IsNull(outputEntity.GeneralResultSubMechanismIllustrationPointEntity); Assert.AreEqual(Convert.ToByte(expectedOutput.CalculationConvergence), outputEntity.CalculationConvergence); }
public void Read_EntityWithHydraulicBoundaryLocationEntity_ReturnsCalculationScenarioWithInputObjectWithLocationSet() { // Setup var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var hydraulicLocationEntity = new HydraulicLocationEntity(); var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); MacroStabilityInwardsCalculationEntity entity = CreateValidCalculationEntity(); entity.HydraulicLocationEntity = hydraulicLocationEntity; // Call MacroStabilityInwardsCalculationScenario calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_EntityWithHydraulicBoundaryLocationInCollector_CalculationHasAlreadyReadHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var entity = new GrassCoverErosionOutwardsWaveConditionsCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call GrassCoverErosionOutwardsWaveConditionsCalculation calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_EntityWithHydraulicBoundaryLocationNotYetInCollector_CalculationWithCreatedHydraulicBoundaryLocationAndRegisteredNewEntities() { // Setup HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var entity = new ProbabilisticPipingCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, EntryPointL = 1, ExitPointL = 2, DampingFactorExitMean = 1 }; var collector = new ReadConversionCollector(); // Call entity.Read(collector); // Assert Assert.IsTrue(collector.Contains(hydraulicLocationEntity)); }
public void Read_EntityWithHydraulicBoundaryLocationInCollector_CalculationHasAlreadyReadHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 1.1, 2.2); var hydraulicLocationEntity = new HydraulicLocationEntity(); var entity = new WaveImpactAsphaltCoverWaveConditionsCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call WaveImpactAsphaltCoverWaveConditionsCalculation calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_ValidEntityWithUnreadHydraulicLocationEntity_ReturnCalculationWithNewHydraulicBoundaryLocation() { // Setup HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var entity = new GrassCoverErosionInwardsCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, ScenarioContribution = 0, DikeHeightTargetProbability = 0.01, OvertoppingRateTargetProbability = 0.02 }; var collector = new ReadConversionCollector(); // Call GrassCoverErosionInwardsCalculationScenario calculation = entity.Read(collector); // Assert Assert.IsNotNull(calculation.InputParameters.HydraulicBoundaryLocation); Assert.IsTrue(collector.Contains(hydraulicLocationEntity)); }
public void Read_EntityWithHydraulicLocationEntity_ReturnCalculationWithHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 2, 3); var hydraulicLocationEntity = new HydraulicLocationEntity(); var entity = new StabilityPointStructuresCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, ScenarioContribution = 0 }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call StructuresCalculationScenario <StabilityPointStructuresInput> calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_EntityWithHydraulicBoundaryLocationNotYetInCollector_CalculationWithCreatedHydraulicBoundaryLocationAndRegisteredNewEntities() { // Setup HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var entity = new SemiProbabilisticPipingCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, EntryPointL = 1, ExitPointL = 2, DampingFactorExitMean = 1, UseAssessmentLevelManualInput = Convert.ToByte(false), ScenarioContribution = 0 }; var collector = new ReadConversionCollector(); // Call entity.Read(collector); // Assert Assert.IsTrue(collector.Contains(hydraulicLocationEntity)); }
public void Create_HasHydraulicLocationEntity_EntityHasHydraulicLocationEntity() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 2.3, 4.5); var registry = new PersistenceRegistry(); HydraulicLocationEntity hydraulicLocationEntity = hydraulicBoundaryLocation.Create(registry, 0); var calculation = new WaveImpactAsphaltCoverWaveConditionsCalculation { InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation } }; // Call WaveImpactAsphaltCoverWaveConditionsCalculationEntity entity = calculation.Create(registry, 0); // Assert Assert.AreSame(hydraulicLocationEntity, entity.HydraulicLocationEntity); }
public void Create_HydraulicBoundaryLocation_EntityHasHydraulicLocationEntity() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 2.3, 4.5); var registry = new PersistenceRegistry(); HydraulicLocationEntity hydraulicLocationEntity = hydraulicBoundaryLocation.Create(registry, 0); var calculation = new ProbabilisticPipingCalculationScenario { InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation } }; // Call ProbabilisticPipingCalculationEntity entity = calculation.Create(registry, 0); // Assert Assert.AreSame(hydraulicLocationEntity, entity.HydraulicLocationEntity); }
public void Create_CalculationWithAlreadySavedHydraulicBoundaryLocation_ReturnEntityWithHydraulicLocationEntity() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 1, 1); var calculation = new GrassCoverErosionInwardsCalculationScenario { InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation } }; var hydraulicLocationEntity = new HydraulicLocationEntity(); var registry = new PersistenceRegistry(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call GrassCoverErosionInwardsCalculationEntity entity = calculation.Create(registry, 0); // Assert Assert.AreSame(hydraulicLocationEntity, entity.HydraulicLocationEntity); }
public void Read_ValidEntityWithAlreadyReadHydraulicLocationEntity_ReturnCalculationWithReadHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 0, 0); var hydraulicLocationEntity = new HydraulicLocationEntity(); var entity = new GrassCoverErosionInwardsCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, ScenarioContribution = 0, DikeHeightTargetProbability = 0.01, OvertoppingRateTargetProbability = 0.02 }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call GrassCoverErosionInwardsCalculationScenario calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Read_EntityWithHydraulicBoundaryLocationInCollector_CalculationHasAlreadyReadHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var hydraulicLocationEntity = new HydraulicLocationEntity(); var entity = new ProbabilisticPipingCalculationEntity { HydraulicLocationEntity = hydraulicLocationEntity, EntryPointL = 1, ExitPointL = 2, DampingFactorExitMean = 1 }; var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call ProbabilisticPipingCalculationScenario calculation = entity.Read(collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, calculation.InputParameters.HydraulicBoundaryLocation); }
public void Create_WithValidCollection_ReturnsEntityWithExpectedResults() { // Setup var random = new Random(21); var hydraulicBoundaryLocation = new TestHydraulicBoundaryLocation(); var calculation = new HydraulicBoundaryLocationCalculation(hydraulicBoundaryLocation) { InputParameters = { ShouldIllustrationPointsBeCalculated = random.NextBoolean() } }; var calculationCollection = new ObservableList <HydraulicBoundaryLocationCalculation> { calculation }; var hydraulicLocationEntity = new HydraulicLocationEntity(); var registry = new PersistenceRegistry(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call HydraulicLocationCalculationCollectionEntity entity = calculationCollection.Create(registry); // Assert Assert.IsNotNull(entity); HydraulicLocationCalculationEntity hydraulicLocationCalculationEntity = entity.HydraulicLocationCalculationEntities.Single(); Assert.AreSame(hydraulicLocationEntity, hydraulicLocationCalculationEntity.HydraulicLocationEntity); Assert.AreEqual(Convert.ToByte(calculation.InputParameters.ShouldIllustrationPointsBeCalculated), hydraulicLocationCalculationEntity.ShouldIllustrationPointsBeCalculated); CollectionAssert.IsEmpty(hydraulicLocationCalculationEntity.HydraulicLocationOutputEntities); }
public void Read_EntityWithHydraulicLocationEntity_InputObjectUpdatedWithHydraulicBoundaryLocation() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(0, "A", 0, 0); var hydraulicLocationEntity = new HydraulicLocationEntity(); var mocks = new MockRepository(); var entity = mocks.Stub <IStructuresCalculationEntity>(); entity.HydraulicLocationEntity = hydraulicLocationEntity; mocks.ReplayAll(); var inputToUpdate = new SimpleStructuresInput(); var collector = new ReadConversionCollector(); collector.Read(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call entity.Read(inputToUpdate, collector); // Assert Assert.AreSame(hydraulicBoundaryLocation, inputToUpdate.HydraulicBoundaryLocation); mocks.VerifyAll(); }
public void Create_WithPersistenceRegistry_ReturnsHydraulicLocationEntityWithPropertiesSet() { // Setup const string testName = "testName"; var random = new Random(21); double coordinateX = random.NextDouble(); double coordinateY = random.NextDouble(); int id = random.Next(0, 150); int order = random.Next(); var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(id, testName, coordinateX, coordinateY); var registry = new PersistenceRegistry(); // Call HydraulicLocationEntity entity = hydraulicBoundaryLocation.Create(registry, order); // Assert Assert.IsNotNull(entity); Assert.AreEqual(id, entity.LocationId); Assert.AreEqual(testName, entity.Name); Assert.AreEqual(coordinateX, entity.LocationX); Assert.AreEqual(coordinateY, entity.LocationY); Assert.AreEqual(order, entity.Order); }
public void Create_HasHydraulicLocationEntity_EntityHasHydraulicLocationEntity() { // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(1, "A", 2.3, 4.5); var calculation = new GrassCoverErosionOutwardsWaveConditionsCalculation { InputParameters = { HydraulicBoundaryLocation = hydraulicBoundaryLocation } }; HydraulicLocationEntity hydraulicLocationEntity = HydraulicLocationEntityTestFactory.CreateHydraulicLocationEntity(); var registry = new PersistenceRegistry(); registry.Register(hydraulicLocationEntity, hydraulicBoundaryLocation); // Call GrassCoverErosionOutwardsWaveConditionsCalculationEntity entity = calculation.Create(registry, 0); // Assert Assert.AreSame(hydraulicLocationEntity, entity.HydraulicLocationEntity); }