Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Factories/ExportableAssessmentSectionFactory.cs =================================================================== diff -u -r3143f826f08381a246a2d7936ece12241b8b1903 -r4f81a1fbcf529c6c920e5a4e476b88edd46e83a4 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Factories/ExportableAssessmentSectionFactory.cs (.../ExportableAssessmentSectionFactory.cs) (revision 3143f826f08381a246a2d7936ece12241b8b1903) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Factories/ExportableAssessmentSectionFactory.cs (.../ExportableAssessmentSectionFactory.cs) (revision 4f81a1fbcf529c6c920e5a4e476b88edd46e83a4) @@ -79,7 +79,7 @@ private static ExportableAssessmentSectionAssemblyResult CreateExportableAssessmentSectionAssemblyResult(AssessmentSection assessmentSection) { return new ExportableAssessmentSectionAssemblyResult(ExportableAssemblyMethod.WBI2C1, - AssessmentSectionAssemblyFactory.AssembleAssessmentSection(assessmentSection)); + AssessmentSectionAssemblyFactory.AssembleAssessmentSection(assessmentSection, false)); } /// @@ -91,7 +91,7 @@ /// Thrown when assembly result cannot be created for . private static ExportableFailureMechanismAssemblyResultWithProbability CreateExportableFailureMechanismAssemblyResultWithProbability(AssessmentSection assessmentSection) { - FailureMechanismAssembly assemblyResult = AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithProbability(assessmentSection); + FailureMechanismAssembly assemblyResult = AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithProbability(assessmentSection, false); return new ExportableFailureMechanismAssemblyResultWithProbability(ExportableAssemblyMethod.WBI2B1, assemblyResult.Group, assemblyResult.Probability); @@ -107,7 +107,7 @@ private static ExportableFailureMechanismAssemblyResult CreateExportableFailureMechanismAssemblyResultWithoutProbability(AssessmentSection assessmentSection) { return new ExportableFailureMechanismAssemblyResult(ExportableAssemblyMethod.WBI2A1, - AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection)); + AssessmentSectionAssemblyFactory.AssembleFailureMechanismsWithoutProbability(assessmentSection, true)); } /// @@ -168,7 +168,7 @@ /// Thrown when assembly results cannot be created for . private static IEnumerable CreateExportableCombinedSectionAssemblyCollection(AssessmentSection assessmentSection) { - IEnumerable assemblyResults = AssessmentSectionAssemblyFactory.AssembleCombinedPerFailureMechanismSection(assessmentSection); + IEnumerable assemblyResults = AssessmentSectionAssemblyFactory.AssembleCombinedPerFailureMechanismSection(assessmentSection, false); return ExportableCombinedSectionAssemblyFactory.CreateExportableCombinedSectionAssemblyCollection(assemblyResults, assessmentSection.ReferenceLine); } } Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Factories/ExportableAssessmentSectionFactoryTest.cs =================================================================== diff -u -rdb257a9bfd556c44d07df2156767f790ff5c5d5c -r4f81a1fbcf529c6c920e5a4e476b88edd46e83a4 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Factories/ExportableAssessmentSectionFactoryTest.cs (.../ExportableAssessmentSectionFactoryTest.cs) (revision db257a9bfd556c44d07df2156767f790ff5c5d5c) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Factories/ExportableAssessmentSectionFactoryTest.cs (.../ExportableAssessmentSectionFactoryTest.cs) (revision 4f81a1fbcf529c6c920e5a4e476b88edd46e83a4) @@ -24,6 +24,7 @@ using System.Linq; using Core.Common.Base.Geometry; using Core.Common.TestUtil; +using Core.Common.Util.Extensions; using NUnit.Framework; using Ringtoets.AssemblyTool.Data; using Ringtoets.AssemblyTool.KernelWrapper.Calculators; @@ -32,10 +33,13 @@ using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.Common.Data.TestUtil; +using Ringtoets.Common.Primitives; using Ringtoets.Integration.Data; using Ringtoets.Integration.Data.Assembly; using Ringtoets.Integration.IO.Assembly; using Ringtoets.Integration.IO.Factories; +using Ringtoets.Piping.Data; +using Ringtoets.StabilityStoneCover.Data; namespace Ringtoets.Integration.IO.Test.Factories { @@ -146,15 +150,47 @@ failureMechanismAssemblyCalculator, assessmentSection); - int expectedNrOfSections = AssessmentSectionAssemblyFactory.AssembleCombinedPerFailureMechanismSection(assessmentSection).Count(); + int expectedNrOfSections = AssessmentSectionAssemblyFactory.AssembleCombinedPerFailureMechanismSection(assessmentSection, false).Count(); Assert.AreEqual(expectedNrOfSections, exportableAssessmentSection.CombinedSectionAssemblies.Count()); } } - #region TestHelper CombinedFailureMechanismSection + [Test] + public void GivenAssessmentSectionWithConfiguredFailureMechanism_WhenCreatingExportableAssessmentSection_ThenManualAssemblyIgnored() + { + // Given + var referenceLine = new ReferenceLine(); + referenceLine.SetGeometry(new[] + { + new Point2D(1, 1), + new Point2D(2, 2) + }); - #endregion + var random = new Random(21); + var assessmentSection = new AssessmentSection(random.NextEnumValue()) + { + ReferenceLine = referenceLine, + Id = "1" + }; + PipingFailureMechanism failureMechanism = assessmentSection.Piping; + FailureMechanismTestHelper.AddSections(failureMechanism, 1); + PipingFailureMechanismSectionResult sectionResult = failureMechanism.SectionResults.Single(); + sectionResult.UseManualAssemblyProbability = true; + sectionResult.ManualAssemblyProbability = random.NextDouble(); + + using (new AssemblyToolCalculatorFactoryConfig()) + { + // When + ExportableAssessmentSectionFactory.CreateExportableAssessmentSection(assessmentSection); + + // Then + var calculatorFactory = (TestAssemblyToolCalculatorFactory) AssemblyToolCalculatorFactory.Instance; + FailureMechanismSectionAssemblyCalculatorStub failureMechanismSectionAssemblyCalculator = calculatorFactory.LastCreatedFailureMechanismSectionAssemblyCalculator; + Assert.IsNull(failureMechanismSectionAssemblyCalculator.ManualAssemblyAssemblyOutput); + } + } + #region TestHelpers FailureMechanismsWithProbability private static void AssertExportableFailureMechanismsWithProbability( Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj =================================================================== diff -u -rf4f9469d89fb6c1d214d4478bcf39b70f88de3e0 -r4f81a1fbcf529c6c920e5a4e476b88edd46e83a4 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj (.../Ringtoets.Integration.IO.Test.csproj) (revision f4f9469d89fb6c1d214d4478bcf39b70f88de3e0) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj (.../Ringtoets.Integration.IO.Test.csproj) (revision 4f81a1fbcf529c6c920e5a4e476b88edd46e83a4) @@ -100,6 +100,10 @@ {3BBFD65B-B277-4E50-AE6D-BD24C3434609} Core.Common.Base + + {F49BD8B2-332A-4C91-A196-8CCE0A2C7D98} + Core.Common.Util + {D749EE4C-CE50-4C17-BF01-9A953028C126} Core.Common.TestUtil