public void Create_WithoutAllPropertiesSet_ReturnsFailureMechanismEntityWithPropertiesSet() { // Setup var failureMechanism = new MacroStabilityInwardsFailureMechanism(); var registry = new PersistenceRegistry(); // Call FailureMechanismEntity entity = failureMechanism.Create(registry); // Assert Assert.IsNotNull(entity); Assert.AreEqual((short)FailureMechanismType.MacroStabilityInwards, entity.FailureMechanismType); Assert.AreEqual(Convert.ToByte(failureMechanism.InAssembly), entity.InAssembly); Assert.AreEqual(failureMechanism.InAssemblyInputComments.Body, entity.InAssemblyInputComments); Assert.AreEqual(failureMechanism.InAssemblyOutputComments.Body, entity.InAssemblyOutputComments); Assert.AreEqual(failureMechanism.NotInAssemblyComments.Body, entity.NotInAssemblyComments); Assert.AreEqual(failureMechanism.CalculationsInputComments.Body, entity.CalculationsInputComments); Assert.AreEqual(failureMechanism.FailureMechanismSectionSourcePath, entity.FailureMechanismSectionCollectionSourcePath); CollectionAssert.IsEmpty(entity.StochasticSoilModelEntities); MacroStabilityInwardsFailureMechanismMetaEntity failureMechanismMetaEntity = entity.MacroStabilityInwardsFailureMechanismMetaEntities.Single(); Assert.AreEqual(failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.A, failureMechanismMetaEntity.A); Assert.AreEqual(failureMechanism.SurfaceLines.SourcePath, failureMechanismMetaEntity.SurfaceLineCollectionSourcePath); Assert.AreEqual(failureMechanism.StochasticSoilModels.SourcePath, failureMechanismMetaEntity.StochasticSoilModelCollectionSourcePath); }
private static void AddEntitiesForFailureMechanismMeta(MacroStabilityInwardsFailureMechanism mechanism, FailureMechanismEntity entity) { var metaEntity = new MacroStabilityInwardsFailureMechanismMetaEntity { A = mechanism.MacroStabilityInwardsProbabilityAssessmentInput.A, StochasticSoilModelCollectionSourcePath = mechanism.StochasticSoilModels.SourcePath.DeepClone(), SurfaceLineCollectionSourcePath = mechanism.SurfaceLines.SourcePath.DeepClone() }; entity.MacroStabilityInwardsFailureMechanismMetaEntities.Add(metaEntity); }
public void ReadProbabilityAssessmentInput_ProbabilityAssessmentInputNull_ThrowsArgumentNullException() { // Setup var entity = new MacroStabilityInwardsFailureMechanismMetaEntity(); // Call TestDelegate test = () => entity.ReadProbabilityAssessmentInput(null); // Assert var exception = Assert.Throws <ArgumentNullException>(test); Assert.AreEqual("probabilityAssessmentInput", exception.ParamName); }
public void Create_WithPropertiesSet_ReturnsFailureMechanismEntityWithPropertiesSet() { // Setup var random = new Random(31); var failureMechanism = new MacroStabilityInwardsFailureMechanism { InAssembly = random.NextBoolean(), InAssemblyInputComments = { Body = "Some input text" }, InAssemblyOutputComments = { Body = "Some output text" }, NotInAssemblyComments = { Body = "Really not in assembly" }, CalculationsInputComments = { Body = "Some calculation text" }, MacroStabilityInwardsProbabilityAssessmentInput = { A = random.NextDouble() } }; var registry = new PersistenceRegistry(); // Call FailureMechanismEntity entity = failureMechanism.Create(registry); // Assert Assert.IsNotNull(entity); Assert.AreEqual((short)FailureMechanismType.MacroStabilityInwards, entity.FailureMechanismType); Assert.AreEqual(Convert.ToByte(failureMechanism.InAssembly), entity.InAssembly); Assert.AreEqual(failureMechanism.InAssemblyInputComments.Body, entity.InAssemblyInputComments); Assert.AreEqual(failureMechanism.InAssemblyOutputComments.Body, entity.InAssemblyOutputComments); Assert.AreEqual(failureMechanism.NotInAssemblyComments.Body, entity.NotInAssemblyComments); Assert.AreEqual(failureMechanism.CalculationsInputComments.Body, entity.CalculationsInputComments); CollectionAssert.IsEmpty(entity.StochasticSoilModelEntities); CollectionAssert.IsEmpty(entity.SurfaceLineEntities); MacroStabilityInwardsFailureMechanismMetaEntity failureMechanismMetaEntity = entity.MacroStabilityInwardsFailureMechanismMetaEntities.Single(); Assert.AreEqual(failureMechanism.MacroStabilityInwardsProbabilityAssessmentInput.A, failureMechanismMetaEntity.A); Assert.AreEqual(failureMechanism.SurfaceLines.SourcePath, failureMechanismMetaEntity.SurfaceLineCollectionSourcePath); Assert.AreEqual(failureMechanism.StochasticSoilModels.SourcePath, failureMechanismMetaEntity.StochasticSoilModelCollectionSourcePath); }
public void ReadProbabilityAssessmentInput_ValidParameters_SetMacroStabilityInwardsProbabilityAssessmentInputProperties() { // Setup var inputToUpdate = new MacroStabilityInwardsProbabilityAssessmentInput(); var entity = new MacroStabilityInwardsFailureMechanismMetaEntity { A = new Random(31).NextDouble() }; // Call entity.ReadProbabilityAssessmentInput(inputToUpdate); // Assert Assert.AreEqual(entity.A, inputToUpdate.A); }
/// <summary> /// Read the <see cref="MacroStabilityInwardsFailureMechanismMetaEntity"/> and use the information to /// update the <paramref name="probabilityAssessmentInput"/>. /// </summary> /// <param name="entity">The <see cref="MacroStabilityInwardsFailureMechanismMetaEntity"/> to use to /// update the <paramref name="probabilityAssessmentInput"/>.</param> /// <param name="probabilityAssessmentInput">The <see cref="MacroStabilityInwardsProbabilityAssessmentInput"/> to be updated.</param> /// <exception cref="ArgumentNullException">Thrown when any input parameter is <c>null</c>.</exception> internal static void ReadProbabilityAssessmentInput(this MacroStabilityInwardsFailureMechanismMetaEntity entity, MacroStabilityInwardsProbabilityAssessmentInput probabilityAssessmentInput) { if (entity == null) { throw new ArgumentNullException(nameof(entity)); } if (probabilityAssessmentInput == null) { throw new ArgumentNullException(nameof(probabilityAssessmentInput)); } probabilityAssessmentInput.A = entity.A; }