Example #1
0
        private static void AssertCombinedFailureMechanismSectionAssemblies(IEnumerable <ExportableCombinedSectionAssembly> expectedCombinedSectionAssemblies,
                                                                            SerializableFailureMechanismSectionCollection expectedSerializableFailureMechanismSectionCollection,
                                                                            SerializableTotalAssemblyResult expectedSerializableTotalAssemblyResult,
                                                                            IEnumerable <SerializableFailureMechanismSection> serializableFailureMechanismSections,
                                                                            IEnumerable <SerializableCombinedFailureMechanismSectionAssembly> serializableFailureMechanismSectionAssemblies)
        {
            IEnumerable <ExportableCombinedFailureMechanismSection> expectedSections = expectedCombinedSectionAssemblies.Select(csar => csar.Section);
            int expectedNrOfSections = expectedSections.Count();

            Assert.AreEqual(expectedNrOfSections, serializableFailureMechanismSections.Count());

            Assert.AreEqual(expectedCombinedSectionAssemblies.Count(), serializableFailureMechanismSectionAssemblies.Count());

            var sectionId         = 0;
            var combinedSectionId = 0;

            for (var i = 0; i < expectedNrOfSections; i++)
            {
                ExportableCombinedFailureMechanismSection expectedSection = expectedSections.ElementAt(i);
                SerializableFailureMechanismSection       actualSection   = serializableFailureMechanismSections.ElementAt(i);

                SerializableFailureMechanismSectionTestHelper.AssertFailureMechanismSection(expectedSection,
                                                                                            expectedSerializableFailureMechanismSectionCollection,
                                                                                            actualSection,
                                                                                            sectionId++);

                SerializableCombinedFailureMechanismSectionAssembly actualSectionAssemblyResult = serializableFailureMechanismSectionAssemblies.ElementAt(i);
                Assert.AreEqual($"Gf.{combinedSectionId++}", actualSectionAssemblyResult.Id);
                Assert.AreEqual(actualSection.Id, actualSectionAssemblyResult.FailureMechanismSectionId);
                Assert.AreEqual(expectedSerializableTotalAssemblyResult.Id, actualSectionAssemblyResult.TotalAssemblyResultId);

                AssertCombinedFailureMechanismSectionResults(expectedCombinedSectionAssemblies.ElementAt(i).FailureMechanismResults,
                                                             actualSectionAssemblyResult.FailureMechanismResults);
            }
        }
        public void DefaultConstructor_ReturnsDefaultValues()
        {
            // Call
            var combinedSectionAssembly = new SerializableCombinedFailureMechanismSectionAssembly();

            // Assert
            Assert.IsInstanceOf <SerializableFeatureMember>(combinedSectionAssembly);
            Assert.IsNull(combinedSectionAssembly.Id);
            Assert.IsNull(combinedSectionAssembly.TotalAssemblyResultId);
            Assert.IsNull(combinedSectionAssembly.FailureMechanismSectionId);
            Assert.IsNull(combinedSectionAssembly.CombinedSectionResult);
            Assert.IsNull(combinedSectionAssembly.FailureMechanismResults);

            SerializableAttributeTestHelper.AssertXmlTypeAttribute(typeof(SerializableCombinedFailureMechanismSectionAssembly), "FaalanalyseGecombineerd");

            SerializableAttributeTestHelper.AssertXmlAttributeAttribute <SerializableCombinedFailureMechanismSectionAssembly>(
                nameof(SerializableCombinedFailureMechanismSectionAssembly.Id), "FaalanalyseGecombineerdID");
            SerializableAttributeTestHelper.AssertXmlAttributeAttribute <SerializableCombinedFailureMechanismSectionAssembly>(
                nameof(SerializableCombinedFailureMechanismSectionAssembly.TotalAssemblyResultId), "VeiligheidsoordeelIDRef");
            SerializableAttributeTestHelper.AssertXmlAttributeAttribute <SerializableCombinedFailureMechanismSectionAssembly>(
                nameof(SerializableCombinedFailureMechanismSectionAssembly.FailureMechanismSectionId), "WaterkeringsectieIDRef");

            SerializableAttributeTestHelper.AssertXmlElementAttribute <SerializableCombinedFailureMechanismSectionAssembly>(
                nameof(SerializableCombinedFailureMechanismSectionAssembly.CombinedSectionResult), "analyseGecombineerdDeelvak");
            SerializableAttributeTestHelper.AssertXmlElementAttribute <SerializableCombinedFailureMechanismSectionAssembly>(
                nameof(SerializableCombinedFailureMechanismSectionAssembly.FailureMechanismResults), "analyseDeelvak");
        }
Example #3
0
        public void Constructor_WithValidArguments_ExpectedValues()
        {
            // Setup
            var failureMechanismSection = new SerializableFailureMechanismSection();
            var sectionAssemblyResult   = new SerializableCombinedFailureMechanismSectionAssembly();

            // Call
            var aggregate = new AggregatedSerializableCombinedFailureMechanismSectionAssembly(failureMechanismSection,
                                                                                              sectionAssemblyResult);

            // Assert
            Assert.AreSame(failureMechanismSection, aggregate.FailureMechanismSection);
            Assert.AreSame(sectionAssemblyResult, aggregate.CombinedFailureMechanismSectionAssembly);
        }
        /// <summary>
        /// Creates a new instance of <see cref="AggregatedSerializableFailureMechanismSectionAssembly"/>.
        /// </summary>
        /// <param name="failureMechanismSection">The <see cref="SerializableFailureMechanismSection"/>.</param>
        /// <param name="combinedFailureMechanismSectionAssembly">The <see cref="SerializableCombinedFailureMechanismSectionAssembly"/>
        /// that is associated with <paramref name="failureMechanismSection"/>.</param>
        /// <exception cref="ArgumentNullException">Thrown when any parameter is <c>null</c>.</exception>
        public AggregatedSerializableCombinedFailureMechanismSectionAssembly(SerializableFailureMechanismSection failureMechanismSection,
                                                                             SerializableCombinedFailureMechanismSectionAssembly combinedFailureMechanismSectionAssembly)
        {
            if (failureMechanismSection == null)
            {
                throw new ArgumentNullException(nameof(failureMechanismSection));
            }

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

            FailureMechanismSection = failureMechanismSection;
            CombinedFailureMechanismSectionAssembly = combinedFailureMechanismSectionAssembly;
        }
        public void Constructor_WithValidData_ReturnsExpectedValues()
        {
            // Setup
            const string id = "id";

            var random        = new Random(39);
            var totalAssembly = new SerializableTotalAssemblyResult("totalAssemblyID",
                                                                    new SerializableAssessmentProcess(),
                                                                    random.NextEnumValue <SerializableAssemblyMethod>(),
                                                                    random.NextEnumValue <SerializableAssemblyMethod>(),
                                                                    random.NextEnumValue <SerializableAssessmentSectionAssemblyGroup>(),
                                                                    random.NextDouble());
            var section = new SerializableFailureMechanismSection("sectionID",
                                                                  new SerializableFailureMechanismSectionCollection(),
                                                                  random.NextDouble(),
                                                                  random.NextDouble(),
                                                                  new[]
            {
                new Point2D(random.NextDouble(), random.NextDouble())
            },
                                                                  SerializableFailureMechanismSectionType.Combined);

            SerializableCombinedFailureMechanismSectionAssemblyResult[] sectionResults = Array.Empty <SerializableCombinedFailureMechanismSectionAssemblyResult>();
            var combinedSectionResult = new SerializableFailureMechanismSubSectionAssemblyResult();

            // Call
            var combinedSectionAssembly = new SerializableCombinedFailureMechanismSectionAssembly(id,
                                                                                                  totalAssembly,
                                                                                                  section,
                                                                                                  sectionResults,
                                                                                                  combinedSectionResult);

            // Assert
            Assert.AreEqual(id, combinedSectionAssembly.Id);
            Assert.AreEqual(totalAssembly.Id, combinedSectionAssembly.TotalAssemblyResultId);
            Assert.AreEqual(section.Id, combinedSectionAssembly.FailureMechanismSectionId);
            Assert.AreSame(sectionResults, combinedSectionAssembly.FailureMechanismResults);
            Assert.AreSame(combinedSectionResult, combinedSectionAssembly.CombinedSectionResult);
        }
 private static void AssertSerializableCombinedFailureMechanismSectionAssembly(string expectedId,
                                                                               SerializableTotalAssemblyResult expectedSerializableTotalAssemblyResult,
                                                                               SerializableFailureMechanismSection expectedSerializableFailureMechanismSection,
                                                                               SerializableCombinedFailureMechanismSectionAssembly serializableCombinedFailureMechanismSectionAssembly)
 {
     Assert.AreEqual(expectedSerializableTotalAssemblyResult.Id, serializableCombinedFailureMechanismSectionAssembly.TotalAssemblyResultId);
     Assert.AreEqual(expectedSerializableFailureMechanismSection.Id, serializableCombinedFailureMechanismSectionAssembly.FailureMechanismSectionId);
     Assert.AreEqual(expectedId, serializableCombinedFailureMechanismSectionAssembly.Id);
 }
Example #7
0
        public void Constructor_WithValidData_ReturnsExpectedValues()
        {
            // Setup
            const string id = "assemblyId1";

            var random                                  = new Random(39);
            var lowerCorner                             = new Point2D(random.NextDouble(), random.NextDouble());
            var upperCorner                             = new Point2D(random.NextDouble(), random.NextDouble());
            var assessmentSection                       = new SerializableAssessmentSection();
            var assessmentProcess                       = new SerializableAssessmentProcess();
            var totalAssemblyResult                     = new SerializableTotalAssemblyResult();
            var failureMechanism                        = new SerializableFailureMechanism();
            var failureMechanismSectionAssembly         = new SerializableFailureMechanismSectionAssembly();
            var combinedFailureMechanismSectionAssembly = new SerializableCombinedFailureMechanismSectionAssembly();
            var failureMechanismSections                = new SerializableFailureMechanismSectionCollection();
            var failureMechanismSection                 = new SerializableFailureMechanismSection();

            // Call
            var assembly = new SerializableAssembly(id,
                                                    lowerCorner,
                                                    upperCorner,
                                                    assessmentSection,
                                                    assessmentProcess,
                                                    totalAssemblyResult,
                                                    new[]
            {
                failureMechanism
            },
                                                    new[]
            {
                failureMechanismSectionAssembly
            },
                                                    new[]
            {
                combinedFailureMechanismSectionAssembly
            },
                                                    new[]
            {
                failureMechanismSections
            },
                                                    new[]
            {
                failureMechanismSection
            });

            // Assert
            Assert.AreEqual(id, assembly.Id);
            Assert.AreEqual(lowerCorner.X.ToString(CultureInfo.InvariantCulture) + " " + lowerCorner.Y.ToString(CultureInfo.InvariantCulture),
                            assembly.Boundary.Envelope.LowerCorner);
            Assert.AreEqual(upperCorner.X.ToString(CultureInfo.InvariantCulture) + " " + upperCorner.Y.ToString(CultureInfo.InvariantCulture),
                            assembly.Boundary.Envelope.UpperCorner);
            CollectionAssert.AreEqual(new SerializableFeatureMember[]
            {
                assessmentSection,
                assessmentProcess,
                totalAssemblyResult,
                failureMechanism,
                failureMechanismSectionAssembly,
                combinedFailureMechanismSectionAssembly,
                failureMechanismSections,
                failureMechanismSection
            }, assembly.FeatureMembers);
        }
        private static SerializableAssembly CreateSerializableAssembly()
        {
            var assessmentSection = new SerializableAssessmentSection("section1", "Traject A", new[]
            {
                new Point2D(0, 0),
                new Point2D(100.0, 0.0)
            });

            var assessmentProcess = new SerializableAssessmentProcess("beoordelingsproces1",
                                                                      assessmentSection);

            var totalAssemblyResult = new SerializableTotalAssemblyResult(
                "veiligheidsoordeel_1", assessmentProcess,
                SerializableAssemblyMethod.BOI2A1, SerializableAssemblyMethod.BOI2B1,
                SerializableAssessmentSectionAssemblyGroup.B, 0.00068354);

            var failureMechanism = new SerializableFailureMechanism(
                "toetsspoorGABI", SerializableFailureMechanismType.Generic, "GABI", "Faalmechanisme GABI", totalAssemblyResult,
                new SerializableFailureMechanismAssemblyResult(0.08419, SerializableAssemblyMethod.BOI1A1));

            var specificFailureMechanism = new SerializableFailureMechanism(
                "specifiekFaalmechanisme", SerializableFailureMechanismType.Specific, "NIEUW", "Specifiek faalmechanisme",
                totalAssemblyResult, new SerializableFailureMechanismAssemblyResult(0.002834, SerializableAssemblyMethod.BOI1A1));

            var sections1 = new SerializableFailureMechanismSectionCollection("vakindelingGABI");
            var section1  = new SerializableFailureMechanismSection(
                "vak_GABI_1",
                sections1,
                0.12,
                10.23,
                new[]
            {
                new Point2D(0.23, 0.24),
                new Point2D(10.23, 10.24)
            },
                SerializableFailureMechanismSectionType.FailureMechanism);

            var result = new SerializableFailureMechanismSectionAssembly(
                "resultaat_GABI_1", failureMechanism, section1,
                new SerializableFailureMechanismSectionAssemblyResult(
                    SerializableAssemblyMethod.BOI0A2, SerializableAssemblyMethod.BOI0B1,
                    SerializableFailureMechanismSectionAssemblyGroup.III, 0.00073));

            var sections2 = new SerializableFailureMechanismSectionCollection("vakindeling_gecombineerd");
            var section2  = new SerializableFailureMechanismSection(
                "vak_gecombineerd_1",
                sections2,
                0.12,
                10.23,
                new[]
            {
                new Point2D(0.23, 0.24),
                new Point2D(10.23, 10.24)
            },
                SerializableFailureMechanismSectionType.Combined,
                SerializableAssemblyMethod.BOI3A1);
            var combinedResult = new SerializableCombinedFailureMechanismSectionAssembly(
                "resultaat_gecombineerd_1",
                totalAssemblyResult,
                section2,
                new[]
            {
                new SerializableCombinedFailureMechanismSectionAssemblyResult(
                    SerializableAssemblyMethod.BOI3B1,
                    SerializableFailureMechanismType.Generic, "HTKW", "Hoogte kunstwerk",
                    SerializableFailureMechanismSectionAssemblyGroup.III),
                new SerializableCombinedFailureMechanismSectionAssemblyResult(
                    SerializableAssemblyMethod.BOI3B1,
                    SerializableFailureMechanismType.Generic, "STPH", "Piping",
                    SerializableFailureMechanismSectionAssemblyGroup.II),
                new SerializableCombinedFailureMechanismSectionAssemblyResult(
                    SerializableAssemblyMethod.BOI3B1,
                    SerializableFailureMechanismType.Specific, "NIEUW", "Specifiek",
                    SerializableFailureMechanismSectionAssemblyGroup.Zero)
            },
                new SerializableFailureMechanismSubSectionAssemblyResult(
                    SerializableAssemblyMethod.BOI3C1, SerializableFailureMechanismSectionAssemblyGroup.I));

            var assembly = new SerializableAssembly(
                "assemblage_1",
                new Point2D(12.0, 34.0),
                new Point2D(56.053, 78.0002345),
                assessmentSection,
                assessmentProcess,
                totalAssemblyResult,
                new[]
            {
                failureMechanism,
                specificFailureMechanism
            },
                new[]
            {
                result
            },
                new[]
            {
                combinedResult
            },
                new[]
            {
                sections1,
                sections2
            },
                new[]
            {
                section1,
                section2
            });

            return(assembly);
        }