Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBase.cs =================================================================== diff -u -r63a9a574f422b3a372d8abc18899e8f1fcf579bd -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBase.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultBase.cs) (revision 63a9a574f422b3a372d8abc18899e8f1fcf579bd) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBase.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultBase.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -5,67 +5,26 @@ /// /// Base implementation to hold all information for exporting assembly results of a failure mechanism section. /// - /// The type of . - public abstract class ExportableAggregatedFailureMechanismSectionAssemblyResultBase - where TSectionAssemblyResult : ExportableSectionAssemblyResult + public abstract class ExportableAggregatedFailureMechanismSectionAssemblyResultBase { /// - /// Creates a new instance of . + /// Creates a new instance of . /// /// The failure mechanism section. - /// The simple assembly result of the failure mechanism section. - /// The tailor made assembly result of the failure mechanism section. - /// The combined assembly result of the failure mechanism section. - /// Thrown when any parameter is null. - protected ExportableAggregatedFailureMechanismSectionAssemblyResultBase(ExportableFailureMechanismSection failureMechanismSection, - TSectionAssemblyResult simpleAssembly, - TSectionAssemblyResult tailorMadeAssembly, - TSectionAssemblyResult combinedAssembly) + /// Thrown when is null. + protected ExportableAggregatedFailureMechanismSectionAssemblyResultBase(ExportableFailureMechanismSection failureMechanismSection) { if (failureMechanismSection == null) { throw new ArgumentNullException(nameof(failureMechanismSection)); } - if (simpleAssembly == null) - { - throw new ArgumentNullException(nameof(simpleAssembly)); - } - - if (tailorMadeAssembly == null) - { - throw new ArgumentNullException(nameof(tailorMadeAssembly)); - } - - if (combinedAssembly == null) - { - throw new ArgumentNullException(nameof(combinedAssembly)); - } - FailureMechanismSection = failureMechanismSection; - SimpleAssembly = simpleAssembly; - TailorMadeAssembly = tailorMadeAssembly; - CombinedAssembly = combinedAssembly; } /// /// Gets the failure mechanism section. /// public ExportableFailureMechanismSection FailureMechanismSection { get; } - - /// - /// Gets the simple assembly result. - /// - public TSectionAssemblyResult SimpleAssembly { get; } - - /// - /// Gets the tailor made assembly result. - /// - public TSectionAssemblyResult TailorMadeAssembly { get; } - - /// - /// Gets the combined assembly result. - /// - public TSectionAssemblyResult CombinedAssembly { get; } } } \ No newline at end of file Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly.cs =================================================================== diff -u -r63a9a574f422b3a372d8abc18899e8f1fcf579bd -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly.cs) (revision 63a9a574f422b3a372d8abc18899e8f1fcf579bd) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -4,10 +4,10 @@ { /// /// Class that holds all the information to export an assembly result without a detailed assembly - /// of a failure mechanism section . + /// of a failure mechanism section. /// - public class ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly : - ExportableAggregatedFailureMechanismSectionAssemblyResultBase + public class ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly + : ExportableAggregatedFailureMechanismSectionAssemblyResultBase { /// /// Creates a new instance of . @@ -21,6 +21,41 @@ ExportableSectionAssemblyResult simpleAssembly, ExportableSectionAssemblyResult tailorMadeAssembly, ExportableSectionAssemblyResult combinedAssembly) - : base(failureMechanismSection, simpleAssembly, tailorMadeAssembly, combinedAssembly) {} + : base(failureMechanismSection) + { + if (simpleAssembly == null) + { + throw new ArgumentNullException(nameof(simpleAssembly)); + } + + if (tailorMadeAssembly == null) + { + throw new ArgumentNullException(nameof(tailorMadeAssembly)); + } + + if (combinedAssembly == null) + { + throw new ArgumentNullException(nameof(combinedAssembly)); + } + + SimpleAssembly = simpleAssembly; + TailorMadeAssembly = tailorMadeAssembly; + CombinedAssembly = combinedAssembly; + } + + /// + /// Gets the simple assembly result. + /// + public ExportableSectionAssemblyResult SimpleAssembly { get; } + + /// + /// Gets the tailor made assembly result. + /// + public ExportableSectionAssemblyResult TailorMadeAssembly { get; } + + /// + /// Gets the combined assembly result. + /// + public ExportableSectionAssemblyResult CombinedAssembly { get; } } } \ No newline at end of file Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableFailureMechanism.cs =================================================================== diff -u -r63a9a574f422b3a372d8abc18899e8f1fcf579bd -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableFailureMechanism.cs (.../ExportableFailureMechanism.cs) (revision 63a9a574f422b3a372d8abc18899e8f1fcf579bd) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Assembly/ExportableFailureMechanism.cs (.../ExportableFailureMechanism.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -10,7 +10,6 @@ /// The type of . public class ExportableFailureMechanism where TFailureMechanismAssemblyResult : ExportableFailureMechanismAssemblyResult - where TSectionAssemblyResult : ExportableSectionAssemblyResult { /// /// Creates a new instance of @@ -24,7 +23,7 @@ /// or is null. public ExportableFailureMechanism(TFailureMechanismAssemblyResult failureMechanismAssembly, IEnumerable sections, - IEnumerable> sectionAssemblyResults, + IEnumerable sectionAssemblyResults, ExportableFailureMechanismType code, ExportableFailureMechanismGroup group) { @@ -63,7 +62,7 @@ /// /// Gets the collection of assembly results. /// - public IEnumerable> SectionAssemblyResults { get; } + public IEnumerable SectionAssemblyResults { get; } /// /// Gets the code of the failure mechanism. Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBaseTest.cs =================================================================== diff -u -ra83e2a5c40411d013fed9b21c300096e098c1594 -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBaseTest.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultBaseTest.cs) (revision a83e2a5c40411d013fed9b21c300096e098c1594) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultBaseTest.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultBaseTest.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -1,9 +1,7 @@ using System; using System.Linq; using Core.Common.Base.Geometry; -using Core.Common.TestUtil; using NUnit.Framework; -using Ringtoets.AssemblyTool.Data; using Ringtoets.Integration.IO.Assembly; namespace Ringtoets.Integration.IO.Test.Assembly @@ -15,101 +13,37 @@ public void Constructor_FailureMechanismSectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(null, - CreateSectionResult(), - CreateSectionResult(), - CreateSectionResult()); + TestDelegate call = () => new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(null); // Assert var exception = Assert.Throws(call); Assert.AreEqual("failureMechanismSection", exception.ParamName); } [Test] - public void Constructor_SimpleAssemblyNull_ThrowsArgumentNullException() - { - // Call - TestDelegate call = () => new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(CreateSection(), - null, - CreateSectionResult(), - CreateSectionResult()); - - // Assert - var exception = Assert.Throws(call); - Assert.AreEqual("simpleAssembly", exception.ParamName); - } - - [Test] - public void Constructor_TailorMadeAssemblyNull_ThrowsArgumentNullException() - { - // Call - TestDelegate call = () => new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(CreateSection(), - CreateSectionResult(), - null, - CreateSectionResult()); - - // Assert - var exception = Assert.Throws(call); - Assert.AreEqual("tailorMadeAssembly", exception.ParamName); - } - - [Test] - public void Constructor_CombinedAssemblyNull_ThrowsArgumentNullException() - { - // Call - TestDelegate call = () => new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(CreateSection(), - CreateSectionResult(), - CreateSectionResult(), - null); - - // Assert - var exception = Assert.Throws(call); - Assert.AreEqual("combinedAssembly", exception.ParamName); - } - - [Test] public void Constructor_ExpectedValues() { // Setup ExportableFailureMechanismSection failureMechanismSection = CreateSection(); - ExportableSectionAssemblyResult simpleAssembly = CreateSectionResult(); - ExportableSectionAssemblyResult tailorMadeAssembly = CreateSectionResult(); - ExportableSectionAssemblyResult combinedAssembly = CreateSectionResult(); // Call - var assemblyResult = new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(failureMechanismSection, - simpleAssembly, - tailorMadeAssembly, - combinedAssembly); + var assemblyResult = new TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(failureMechanismSection); // Assert Assert.AreSame(failureMechanismSection, assemblyResult.FailureMechanismSection); - Assert.AreSame(simpleAssembly, assemblyResult.SimpleAssembly); - Assert.AreSame(tailorMadeAssembly, assemblyResult.TailorMadeAssembly); - Assert.AreSame(combinedAssembly, assemblyResult.CombinedAssembly); } - private static ExportableSectionAssemblyResult CreateSectionResult() - { - var random = new Random(21); - return new ExportableSectionAssemblyResult(random.NextEnumValue(), - random.NextEnumValue()); - } - private static ExportableFailureMechanismSection CreateSection() { var random = new Random(21); return new ExportableFailureMechanismSection(Enumerable.Empty(), random.NextDouble(), random.NextDouble()); } private class TestExportableAggregatedFailureMechanismSectionAssemblyResultBase - : ExportableAggregatedFailureMechanismSectionAssemblyResultBase + : ExportableAggregatedFailureMechanismSectionAssemblyResultBase { - public TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(ExportableFailureMechanismSection failureMechanismSection, - ExportableSectionAssemblyResult simpleAssembly, - ExportableSectionAssemblyResult tailorMadeAssembly, - ExportableSectionAssemblyResult combinedAssembly) - : base(failureMechanismSection, simpleAssembly, tailorMadeAssembly, combinedAssembly) {} + public TestExportableAggregatedFailureMechanismSectionAssemblyResultBase(ExportableFailureMechanismSection failureMechanismSection) + : base(failureMechanismSection) {} } } } \ No newline at end of file Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest.cs =================================================================== diff -u -ra83e2a5c40411d013fed9b21c300096e098c1594 -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest.cs) (revision a83e2a5c40411d013fed9b21c300096e098c1594) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest.cs (.../ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -12,6 +12,52 @@ public class ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssemblyTest { [Test] + public void Constructor_SimpleAssemblyNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( + CreateSection(), + null, + CreateSectionResult(), + CreateSectionResult()); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("simpleAssembly", exception.ParamName); + } + + [Test] + public void Constructor_TailorMadeAssemblyNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( + CreateSection(), + CreateSectionResult(), + null, + CreateSectionResult()); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("tailorMadeAssembly", exception.ParamName); + } + + [Test] + public void Constructor_CombinedAssemblyNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( + CreateSection(), + CreateSectionResult(), + CreateSectionResult(), + null); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("combinedAssembly", exception.ParamName); + } + + + [Test] public void Constructor_ExpectedValues() { // Setup @@ -27,7 +73,7 @@ combinedAssembly); // Assert - Assert.IsInstanceOf>(assemblyResult); + Assert.IsInstanceOf(assemblyResult); Assert.AreSame(failureMechanismSection, assemblyResult.FailureMechanismSection); Assert.AreSame(simpleAssembly, assemblyResult.SimpleAssembly); Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableFailureMechanismTest.cs =================================================================== diff -u -r611b9bd1425731d67886c37184e1cfcbea409d97 -rb41667ee02ea1f2d7415e7f2f1fd29226d83d806 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableFailureMechanismTest.cs (.../ExportableFailureMechanismTest.cs) (revision 611b9bd1425731d67886c37184e1cfcbea409d97) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Assembly/ExportableFailureMechanismTest.cs (.../ExportableFailureMechanismTest.cs) (revision b41667ee02ea1f2d7415e7f2f1fd29226d83d806) @@ -16,8 +16,8 @@ { // Setup var random = new Random(21); - IEnumerable> sectionAssemblyResults = - Enumerable.Empty>(); + IEnumerable sectionAssemblyResults = + Enumerable.Empty(); var code = random.NextEnumValue(); var group = random.NextEnumValue(); @@ -35,8 +35,8 @@ { // Setup var random = new Random(21); - IEnumerable> sectionAssemblyResults = - Enumerable.Empty>(); + IEnumerable sectionAssemblyResults = + Enumerable.Empty(); var code = random.NextEnumValue(); var group = random.NextEnumValue(); @@ -74,8 +74,8 @@ var random = new Random(21); ExportableFailureMechanismAssemblyResult failureMechanismAssembly = CreateFailureMechanismAssemblyResult(); IEnumerable sections = Enumerable.Empty(); - IEnumerable> sectionAssemblyResults = - Enumerable.Empty>(); + IEnumerable sectionAssemblyResults = + Enumerable.Empty(); var code = random.NextEnumValue(); var group = random.NextEnumValue();