Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Service/StabilityPointStructuresDataSynchronizationService.cs =================================================================== diff -u -r2a0fbe6ec22928831305671ecd4f41030b827250 -rdb1a4833c509fe535570e8a4b9c90c0ec242fc99 --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Service/StabilityPointStructuresDataSynchronizationService.cs (.../StabilityPointStructuresDataSynchronizationService.cs) (revision 2a0fbe6ec22928831305671ecd4f41030b827250) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.Service/StabilityPointStructuresDataSynchronizationService.cs (.../StabilityPointStructuresDataSynchronizationService.cs) (revision db1a4833c509fe535570e8a4b9c90c0ec242fc99) @@ -143,6 +143,11 @@ .ToArray(); foreach (StructuresCalculation calculation in calculationWithRemovedStabilityPointStructure) { + foreach (var calculationWithRemovedOutput in RingtoetsCommonDataSynchronizationService.ClearCalculationOutput(calculation)) + { + changedObservables.Add(calculationWithRemovedOutput); + } + calculation.InputParameters.Structure = null; changedObservables.Add(calculation.InputParameters); } Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Service.Test/StabilityPointStructuresDataSynchronizationServiceTest.cs =================================================================== diff -u -racfa9d23d1770ca3171668552ddbe6d63fdd0dcd -rdb1a4833c509fe535570e8a4b9c90c0ec242fc99 --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Service.Test/StabilityPointStructuresDataSynchronizationServiceTest.cs (.../StabilityPointStructuresDataSynchronizationServiceTest.cs) (revision acfa9d23d1770ca3171668552ddbe6d63fdd0dcd) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Service.Test/StabilityPointStructuresDataSynchronizationServiceTest.cs (.../StabilityPointStructuresDataSynchronizationServiceTest.cs) (revision db1a4833c509fe535570e8a4b9c90c0ec242fc99) @@ -27,6 +27,7 @@ using NUnit.Framework; using Ringtoets.Common.Data.Calculation; using Ringtoets.Common.Data.FailureMechanism; +using Ringtoets.Common.Data.Probability; using Ringtoets.Common.Data.Structures; using Ringtoets.Common.Data.TestUtil; using Ringtoets.Common.Service; @@ -167,13 +168,16 @@ StabilityPointStructuresFailureMechanismSectionResult[] sectionResultsWithStructure = failureMechanism.SectionResults .Where(sr => calculationsWithStructure.Contains(sr.Calculation)) .ToArray(); + StructuresCalculation[] calculationsWithOutput = calculationsWithStructure.Where(c => c.HasOutput) + .ToArray(); int originalNumberOfSectionResultAssignments = failureMechanism.SectionResults.Count(sr => sr.Calculation != null); StabilityPointStructuresFailureMechanismSectionResult[] sectionResults = failureMechanism.SectionResults .Where(sr => calculationsWithStructure.Contains(sr.Calculation)) .ToArray(); // Precondition + CollectionAssert.IsNotEmpty(calculationsWithOutput); CollectionAssert.IsNotEmpty(calculationsWithStructure); CollectionAssert.IsNotEmpty(sectionResultsWithStructure); @@ -188,19 +192,27 @@ { Assert.IsNull(calculation.InputParameters.Structure); } + foreach (StructuresCalculation calculation in calculationsWithOutput) + { + Assert.IsFalse(calculation.HasOutput); + } foreach (StabilityPointStructuresFailureMechanismSectionResult sectionResult in sectionResultsWithStructure) { Assert.IsNull(sectionResult.Calculation); } IObservable[] array = affectedObjects.ToArray(); - Assert.AreEqual(1 + calculationsWithStructure.Length + sectionResultsWithStructure.Length, + Assert.AreEqual(1 + calculationsWithOutput.Length + calculationsWithStructure.Length + sectionResultsWithStructure.Length, array.Length); CollectionAssert.Contains(array, failureMechanism.StabilityPointStructures); foreach (StructuresCalculation calculation in calculationsWithStructure) { CollectionAssert.Contains(array, calculation.InputParameters); } + foreach (StructuresCalculation calculation in calculationsWithOutput) + { + CollectionAssert.Contains(array, calculation); + } foreach (StabilityPointStructuresFailureMechanismSectionResult result in sectionResultsWithStructure) { CollectionAssert.Contains(array, result); @@ -230,7 +242,8 @@ { ForeshoreProfile = profile, Structure = structure1 - } + }, + Output = new ProbabilityAssessmentOutput(0, 0, 0, 0, 0) }; StructuresCalculation calculation2 = new TestStabilityPointStructuresCalculation {