Index: Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.IO.Test/Model/SerializableFailureMechanismSectionAssemblyTest.cs =================================================================== diff -u -rb50aa5c330d5c514ef0727cb9b732094c228eb46 -r24154e2ef651d5deac25c6caf8f143d0348b29ff --- Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.IO.Test/Model/SerializableFailureMechanismSectionAssemblyTest.cs (.../SerializableFailureMechanismSectionAssemblyTest.cs) (revision b50aa5c330d5c514ef0727cb9b732094c228eb46) +++ Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.IO.Test/Model/SerializableFailureMechanismSectionAssemblyTest.cs (.../SerializableFailureMechanismSectionAssemblyTest.cs) (revision 24154e2ef651d5deac25c6caf8f143d0348b29ff) @@ -20,9 +20,13 @@ // All rights reserved. using System; +using System.Linq; +using Core.Common.Base.Geometry; +using Core.Common.TestUtil; using NUnit.Framework; using Ringtoets.AssemblyTool.IO.Model; using Ringtoets.AssemblyTool.IO.Model.DataTypes; +using Ringtoets.AssemblyTool.IO.Model.Enums; using Ringtoets.AssemblyTool.IO.TestUtil; namespace Ringtoets.AssemblyTool.IO.Test.Model @@ -40,13 +44,16 @@ Assert.IsInstanceOf(sectionAssembly); Assert.IsNull(sectionAssembly.Id); Assert.IsNull(sectionAssembly.FailureMechanismId); + Assert.IsNull(sectionAssembly.FailureMechanismSectionId); Assert.IsNull(sectionAssembly.CombinedSectionResult); Assert.IsNull(sectionAssembly.SectionResults); SerializableAttributeTestHelper.AssertXmlAttributeAttribute( nameof(SerializableFailureMechanismSectionAssembly.Id), "ToetsID"); SerializableAttributeTestHelper.AssertXmlAttributeAttribute( nameof(SerializableFailureMechanismSectionAssembly.FailureMechanismId), "ToetsspoorIDRef"); + SerializableAttributeTestHelper.AssertXmlAttributeAttribute( + nameof(SerializableFailureMechanismSectionAssembly.FailureMechanismSectionId), "WaterkeringsectieIDRef"); SerializableAttributeTestHelper.AssertXmlElementAttribute( nameof(SerializableFailureMechanismSectionAssembly.CombinedSectionResult), "eindtoetsoordeel"); @@ -60,6 +67,7 @@ // Call TestDelegate call = () => new SerializableFailureMechanismSectionAssembly(null, new SerializableFailureMechanism(), + new SerializableFailureMechanismSection(), new SerializableFailureMechanismSectionAssemblyResult[0], new SerializableFailureMechanismSectionAssemblyResult()); @@ -74,6 +82,7 @@ // Call TestDelegate call = () => new SerializableFailureMechanismSectionAssembly("id", null, + new SerializableFailureMechanismSection(), new SerializableFailureMechanismSectionAssemblyResult[0], new SerializableFailureMechanismSectionAssemblyResult()); @@ -83,11 +92,27 @@ } [Test] + public void Constructor_SectionNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => new SerializableFailureMechanismSectionAssembly("id", + new SerializableFailureMechanism(), + null, + new SerializableFailureMechanismSectionAssemblyResult[0], + new SerializableFailureMechanismSectionAssemblyResult()); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("section", exception.ParamName); + } + + [Test] public void Constructor_SectionResultsNull_ThrowsArgumentNullException() { // Call TestDelegate call = () => new SerializableFailureMechanismSectionAssembly("id", new SerializableFailureMechanism(), + new SerializableFailureMechanismSection(), null, new SerializableFailureMechanismSectionAssemblyResult()); @@ -102,6 +127,7 @@ // Call TestDelegate call = () => new SerializableFailureMechanismSectionAssembly("id", new SerializableFailureMechanism(), + new SerializableFailureMechanismSection(), new SerializableFailureMechanismSectionAssemblyResult[0], null); @@ -116,19 +142,31 @@ // Setup const string id = "id"; - var failureMechanism = new SerializableFailureMechanism(); + var random = new Random(39); + var failureMechanism = new SerializableFailureMechanism("failure mechanism ID", + new SerializableTotalAssemblyResult(), + random.NextEnumValue(), + random.NextEnumValue(), + new SerializableFailureMechanismAssemblyResult()); + var section = new SerializableFailureMechanismSection("section ID", + new SerializableFailureMechanismSections(), + random.NextDouble(), + random.NextDouble(), + Enumerable.Empty()); var sectionResults = new SerializableFailureMechanismSectionAssemblyResult[0]; var combinedSectionResult = new SerializableFailureMechanismSectionAssemblyResult(); // Call var sectionAssembly = new SerializableFailureMechanismSectionAssembly(id, failureMechanism, + section, sectionResults, combinedSectionResult); // Assert Assert.AreEqual(id, sectionAssembly.Id); Assert.AreEqual(failureMechanism.Id, sectionAssembly.FailureMechanismId); + Assert.AreEqual(section.Id, sectionAssembly.FailureMechanismSectionId); Assert.AreSame(sectionResults, sectionAssembly.SectionResults); Assert.AreSame(combinedSectionResult, sectionAssembly.CombinedSectionResult); }