Beispiel #1
0
        public void ReadAdoptableFailureMechanismSectionResultEntity_ParameterValues_SectionResultWithParameterValues()
        {
            // Setup
            var    random     = new Random(21);
            bool   isRelevant = random.NextBoolean();
            var    initialFailureMechanismResultType = random.NextEnumValue <AdoptableInitialFailureMechanismResultType>();
            double manualSectionProbability          = random.NextDouble();
            var    furtherAnalysisType       = random.NextEnumValue <FailureMechanismSectionResultFurtherAnalysisType>();
            double refinedSectionProbability = random.NextDouble();

            var entity = new AdoptableFailureMechanismSectionResultEntity
            {
                IsRelevant = Convert.ToByte(isRelevant),
                InitialFailureMechanismResultType = Convert.ToByte(initialFailureMechanismResultType),
                ManualInitialFailureMechanismResultSectionProbability = manualSectionProbability,
                FurtherAnalysisType       = Convert.ToByte(furtherAnalysisType),
                RefinedSectionProbability = refinedSectionProbability
            };
            var sectionResult = new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection());

            // Call
            entity.Read(sectionResult);

            // Assert
            Assert.AreEqual(isRelevant, sectionResult.IsRelevant);
            Assert.AreEqual(initialFailureMechanismResultType, sectionResult.InitialFailureMechanismResultType);
            Assert.AreEqual(manualSectionProbability, sectionResult.ManualInitialFailureMechanismResultSectionProbability);
            Assert.AreEqual(furtherAnalysisType, sectionResult.FurtherAnalysisType);
            Assert.AreEqual(refinedSectionProbability, sectionResult.RefinedSectionProbability);
        }
        public void CreateAdoptableFailureMechanismSectionResult_SectionResultWithValues_ReturnsEntityWithExpectedValues()
        {
            // Setup
            var    random     = new Random(21);
            bool   isRelevant = random.NextBoolean();
            var    initialFailureMechanismResultType = random.NextEnumValue <AdoptableInitialFailureMechanismResultType>();
            double manualSectionProbability          = random.NextDouble();
            var    furtherAnalysisType       = random.NextEnumValue <FailureMechanismSectionResultFurtherAnalysisType>();
            double refinedSectionProbability = random.NextDouble();

            var sectionResult = new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection())
            {
                IsRelevant = isRelevant,
                InitialFailureMechanismResultType = initialFailureMechanismResultType,
                ManualInitialFailureMechanismResultSectionProbability = manualSectionProbability,
                FurtherAnalysisType       = furtherAnalysisType,
                RefinedSectionProbability = refinedSectionProbability
            };

            // Call
            AdoptableFailureMechanismSectionResultEntity entity = sectionResult.Create();

            // Assert
            Assert.AreEqual(Convert.ToByte(isRelevant), entity.IsRelevant);
            Assert.AreEqual(Convert.ToByte(initialFailureMechanismResultType), entity.InitialFailureMechanismResultType);
            Assert.AreEqual(manualSectionProbability, entity.ManualInitialFailureMechanismResultSectionProbability);
            Assert.AreEqual(Convert.ToByte(furtherAnalysisType), entity.FurtherAnalysisType);
            Assert.AreEqual(refinedSectionProbability, entity.RefinedSectionProbability);
        }
Beispiel #3
0
 /// <summary>
 /// Asserts whether the data of the <see cref="AdoptableFailureMechanismSectionResultEntity"/> and
 /// <see cref="AdoptableFailureMechanismSectionResult"/> have equal values.
 /// </summary>
 /// <param name="sectionResultEntity">The <see cref="AdoptableFailureMechanismSectionResultEntity"/>.</param>
 /// <param name="sectionResult">The <see cref="AdoptableFailureMechanismSectionResult"/>.</param>
 public static void AssertSectionResult(AdoptableFailureMechanismSectionResultEntity sectionResultEntity,
                                        AdoptableFailureMechanismSectionResult sectionResult)
 {
     Assert.AreEqual(Convert.ToBoolean(sectionResultEntity.IsRelevant), sectionResult.IsRelevant);
     Assert.AreEqual((AdoptableInitialFailureMechanismResultType)sectionResultEntity.InitialFailureMechanismResultType, sectionResult.InitialFailureMechanismResultType);
     Assert.AreEqual(sectionResultEntity.ManualInitialFailureMechanismResultSectionProbability.ToNullAsNaN(), sectionResult.ManualInitialFailureMechanismResultSectionProbability);
     Assert.AreEqual((FailureMechanismSectionResultFurtherAnalysisType)sectionResultEntity.FurtherAnalysisType, sectionResult.FurtherAnalysisType);
     Assert.AreEqual(sectionResultEntity.RefinedSectionProbability.ToNullAsNaN(), sectionResult.RefinedSectionProbability);
 }
Beispiel #4
0
        /// <summary>
        /// Sets random section results for a <see cref="AdoptableFailureMechanismSectionResultEntity"/>.
        /// </summary>
        /// <param name="sectionResult">The failure mechanism section result to set.</param>
        public static void SetSectionResult(AdoptableFailureMechanismSectionResultEntity sectionResult)
        {
            var random = new Random(21);

            sectionResult.IsRelevant = Convert.ToByte(random.NextBoolean());
            sectionResult.InitialFailureMechanismResultType = Convert.ToByte(random.NextEnumValue <AdoptableInitialFailureMechanismResultType>());
            sectionResult.ManualInitialFailureMechanismResultSectionProbability = random.NextDouble();
            sectionResult.FurtherAnalysisType       = Convert.ToByte(random.NextEnumValue <FailureMechanismSectionResultFurtherAnalysisType>());
            sectionResult.RefinedSectionProbability = random.NextDouble();
        }
 private static void AddEntitiesForSectionResults(
     IEnumerable <AdoptableFailureMechanismSectionResult> sectionResults,
     PersistenceRegistry registry)
 {
     foreach (AdoptableFailureMechanismSectionResult failureMechanismSectionResult in sectionResults)
     {
         AdoptableFailureMechanismSectionResultEntity sectionResultEntity = failureMechanismSectionResult.Create();
         FailureMechanismSectionEntity section = registry.Get(failureMechanismSectionResult.Section);
         section.AdoptableFailureMechanismSectionResultEntities.Add(sectionResultEntity);
     }
 }
Beispiel #6
0
        public void ReadAdoptableFailureMechanismSectionResultEntity_SectionResultNull_ThrowsArgumentNullException()
        {
            // Setup
            var entity = new AdoptableFailureMechanismSectionResultEntity();

            // Call
            void Call() => entity.Read(null);

            // Assert
            var exception = Assert.Throws <ArgumentNullException>(Call);

            Assert.AreEqual("sectionResult", exception.ParamName);
        }
Beispiel #7
0
        public void ReadAdoptableFailureMechanismSectionResultEntity_EntityWithNullValues_SectionResultWithNaNValues()
        {
            // Setup
            var entity        = new AdoptableFailureMechanismSectionResultEntity();
            var sectionResult = new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection());

            // Call
            entity.Read(sectionResult);

            // Assert
            Assert.IsNaN(sectionResult.ManualInitialFailureMechanismResultSectionProbability);
            Assert.IsNaN(sectionResult.RefinedSectionProbability);
        }
        /// <summary>
        /// Creates an instance of <see cref="AdoptableFailureMechanismSectionResultEntity"/>
        /// based on the information of the <see cref="AdoptableFailureMechanismSectionResult"/>.
        /// </summary>
        /// <param name="result">The result to create a database entity for.</param>
        /// <returns>An <see cref="AdoptableFailureMechanismSectionResultEntity"/>.</returns>
        /// <exception cref="ArgumentNullException">Thrown when <paramref name="result"/> is <c>null</c>.</exception>
        internal static AdoptableFailureMechanismSectionResultEntity Create(this AdoptableFailureMechanismSectionResult result)
        {
            if (result == null)
            {
                throw new ArgumentNullException(nameof(result));
            }

            var sectionResultEntity = new AdoptableFailureMechanismSectionResultEntity
            {
                InitialFailureMechanismResultType = Convert.ToByte(result.InitialFailureMechanismResultType)
            };

            sectionResultEntity.SetCommonFailureMechanismSectionResultProperties(result);
            return(sectionResultEntity);
        }
        public void CreateAdoptableFailureMechanismSectionResult_SectionResultWithNaNValues_ReturnsEntityWithExpectedResults()
        {
            // Setup
            var sectionResult = new AdoptableFailureMechanismSectionResult(FailureMechanismSectionTestFactory.CreateFailureMechanismSection())
            {
                ManualInitialFailureMechanismResultSectionProbability = double.NaN,
                RefinedSectionProbability = double.NaN
            };

            // Call
            AdoptableFailureMechanismSectionResultEntity entity = sectionResult.Create();

            // Assert
            Assert.IsNull(entity.ManualInitialFailureMechanismResultSectionProbability);
            Assert.IsNull(entity.RefinedSectionProbability);
        }
        /// <summary>
        /// Reads the <see cref="AdoptableFailureMechanismSectionResultEntity"/> and use the information
        /// to update an <see cref="AdoptableFailureMechanismSectionResult"/>.
        /// </summary>
        /// <param name="entity">The <see cref="AdoptableFailureMechanismSectionResultEntity"/> used to update
        /// the <paramref name="sectionResult"/>.</param>
        /// <param name="sectionResult">The target of the read operation.</param>
        /// <exception cref="ArgumentNullException">Thrown when any input parameter is <c>null</c>.</exception>
        internal static void Read(this AdoptableFailureMechanismSectionResultEntity entity,
                                  AdoptableFailureMechanismSectionResult sectionResult)
        {
            if (entity == null)
            {
                throw new ArgumentNullException(nameof(entity));
            }

            if (sectionResult == null)
            {
                throw new ArgumentNullException(nameof(sectionResult));
            }

            sectionResult.InitialFailureMechanismResultType = (AdoptableInitialFailureMechanismResultType)entity.InitialFailureMechanismResultType;
            sectionResult.SetCommonFailureMechanismSectionResultProperties(entity);
        }