Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Create/MacroStabilityInwards/MacroStabilityInwardsOutputCreateExtensions.cs =================================================================== diff -u -r92a7d5fbc462aa16be6eba11ba9e7b54fcd38622 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Create/MacroStabilityInwards/MacroStabilityInwardsOutputCreateExtensions.cs (.../MacroStabilityInwardsOutputCreateExtensions.cs) (revision 92a7d5fbc462aa16be6eba11ba9e7b54fcd38622) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Create/MacroStabilityInwards/MacroStabilityInwardsOutputCreateExtensions.cs (.../MacroStabilityInwardsOutputCreateExtensions.cs) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -64,7 +64,7 @@ private static void SetSlidingCurveParametersToEntity(MacroStabilityInwardsCalculationOutputEntity entity, MacroStabilityInwardsSlidingCurve slidingCurve) { - entity.SlidingCurveSliceXML = new MacroStabilityInwardsSliceXmlSerializer().ToXml(slidingCurve.Slices); + entity.SlidingCurveSliceXML = new MacroStabilityInwardsSliceCollectionXmlSerializer().ToXml(slidingCurve.Slices); entity.SlidingCurveNonIteratedHorizontalForce = slidingCurve.NonIteratedHorizontalForce.ToNaNAsNull(); entity.SlidingCurveIteratedHorizontalForce = slidingCurve.IteratedHorizontalForce.ToNaNAsNull(); Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensions.cs =================================================================== diff -u -r92a7d5fbc462aa16be6eba11ba9e7b54fcd38622 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensions.cs (.../MacroStabilityInwardsCalculationOutputEntityReadExtensions.cs) (revision 92a7d5fbc462aa16be6eba11ba9e7b54fcd38622) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensions.cs (.../MacroStabilityInwardsCalculationOutputEntityReadExtensions.cs) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -105,7 +105,7 @@ entity.SlidingCurveRightSlidingCircleDrivingMoment.ToNullAsNaN(), entity.SlidingCurveRightSlidingCircleResistingMoment.ToNullAsNaN()); - MacroStabilityInwardsSlice[] slices = new MacroStabilityInwardsSliceXmlSerializer().FromXml(entity.SlidingCurveSliceXML); + MacroStabilityInwardsSlice[] slices = new MacroStabilityInwardsSliceCollectionXmlSerializer().FromXml(entity.SlidingCurveSliceXML); return new MacroStabilityInwardsSlidingCurve(leftCircle, rightCircle, slices, Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj =================================================================== diff -u -re7b995e73b08ce04fdab70659806ced72a982782 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj (.../Ringtoets.Storage.Core.csproj) (revision e7b995e73b08ce04fdab70659806ced72a982782) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj (.../Ringtoets.Storage.Core.csproj) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -424,7 +424,7 @@ - + Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializer.cs =================================================================== diff -u --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializer.cs (revision 0) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializer.cs (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -0,0 +1,274 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.Serialization; +using Core.Common.Base.Geometry; +using Ringtoets.MacroStabilityInwards.Data; + +namespace Ringtoets.Storage.Core.Serializers +{ + /// + /// Converter class that converts between a collection of + /// and an XML representation of that data. + /// + internal class MacroStabilityInwardsSliceCollectionXmlSerializer : DataCollectionSerializer + { + protected override SerializableMacroStabilityInwardsSlice[] ToSerializableData(IEnumerable elements) + { + return elements.Select(s => new SerializableMacroStabilityInwardsSlice(s)).ToArray(); + } + + protected override MacroStabilityInwardsSlice[] FromSerializableData(IEnumerable serializedElements) + { + return serializedElements.Select(se => se.ToMacroStabilityInwardsSlice()).ToArray(); + } + + [Serializable] + [DataContract(Name = nameof(SerializableMacroStabilityInwardsSlice), Namespace = "")] + internal class SerializableMacroStabilityInwardsSlice + { + /// + /// Creates a new instance of . + /// + /// The to base the + /// on. + public SerializableMacroStabilityInwardsSlice(MacroStabilityInwardsSlice slice) + { + topLeftPointX = slice.TopLeftPoint.X; + topLeftPointY = slice.TopLeftPoint.Y; + topRightPointX = slice.TopRightPoint.X; + topRightPointY = slice.TopRightPoint.Y; + + bottomLeftPointX = slice.BottomLeftPoint.X; + bottomLeftPointY = slice.BottomLeftPoint.Y; + bottomRightPointX = slice.BottomRightPoint.X; + bottomRightPointY = slice.BottomRightPoint.Y; + + cohesion = slice.Cohesion; + frictionAngle = slice.FrictionAngle; + criticalPressure = slice.CriticalPressure; + overConsolidationRatio = slice.OverConsolidationRatio; + pop = slice.Pop; + degreeOfConsolidationPorePressureSoil = slice.DegreeOfConsolidationPorePressureSoil; + degreeOfConsolidationPorePressureLoad = slice.DegreeOfConsolidationPorePressureLoad; + dilatancy = slice.Dilatancy; + externalLoad = slice.ExternalLoad; + hydrostaticPorePressure = slice.HydrostaticPorePressure; + leftForce = slice.LeftForce; + leftForceAngle = slice.LeftForceAngle; + leftForceY = slice.LeftForceY; + rightForce = slice.RightForce; + rightForceAngle = slice.RightForceAngle; + rightForceY = slice.RightForceY; + loadStress = slice.LoadStress; + normalStress = slice.NormalStress; + porePressure = slice.PorePressure; + horizontalPorePressure = slice.HorizontalPorePressure; + verticalPorePressure = slice.VerticalPorePressure; + piezometricPorePressure = slice.PiezometricPorePressure; + effectiveStress = slice.EffectiveStress; + effectiveStressDaily = slice.EffectiveStressDaily; + excessPorePressure = slice.ExcessPorePressure; + shearStress = slice.ShearStress; + soilStress = slice.SoilStress; + totalPorePressure = slice.TotalPorePressure; + totalStress = slice.TotalStress; + weight = slice.Weight; + } + + /// + /// Creates a new instance of . + /// + /// The new instance of . + public MacroStabilityInwardsSlice ToMacroStabilityInwardsSlice() + { + return new MacroStabilityInwardsSlice( + new Point2D(topLeftPointX, topLeftPointY), + new Point2D(topRightPointX, topRightPointY), + new Point2D(bottomLeftPointX, bottomLeftPointY), + new Point2D(bottomRightPointX, bottomRightPointY), + new MacroStabilityInwardsSlice.ConstructionProperties + { + Cohesion = cohesion, + FrictionAngle = frictionAngle, + CriticalPressure = criticalPressure, + OverConsolidationRatio = overConsolidationRatio, + Pop = pop, + DegreeOfConsolidationPorePressureSoil = degreeOfConsolidationPorePressureSoil, + DegreeOfConsolidationPorePressureLoad = degreeOfConsolidationPorePressureLoad, + Dilatancy = dilatancy, + ExternalLoad = externalLoad, + HydrostaticPorePressure = hydrostaticPorePressure, + LeftForce = leftForce, + LeftForceAngle = leftForceAngle, + LeftForceY = leftForceY, + RightForce = rightForce, + RightForceAngle = rightForceAngle, + RightForceY = rightForceY, + LoadStress = loadStress, + NormalStress = normalStress, + PorePressure = porePressure, + HorizontalPorePressure = horizontalPorePressure, + VerticalPorePressure = verticalPorePressure, + PiezometricPorePressure = piezometricPorePressure, + EffectiveStress = effectiveStress, + EffectiveStressDaily = effectiveStressDaily, + ExcessPorePressure = excessPorePressure, + ShearStress = shearStress, + SoilStress = soilStress, + TotalPorePressure = totalPorePressure, + TotalStress = totalStress, + Weight = weight + }); + } + + #region Top coordinates + + [DataMember] + private readonly double topLeftPointX; + + [DataMember] + private readonly double topLeftPointY; + + [DataMember] + private readonly double topRightPointX; + + [DataMember] + private readonly double topRightPointY; + + #endregion + + #region Bottom coordinates + + [DataMember] + private readonly double bottomLeftPointX; + + [DataMember] + private readonly double bottomLeftPointY; + + [DataMember] + private readonly double bottomRightPointX; + + [DataMember] + private readonly double bottomRightPointY; + + #endregion + + #region Data + + [DataMember] + private readonly double cohesion; + + [DataMember] + private readonly double frictionAngle; + + [DataMember] + private readonly double criticalPressure; + + [DataMember] + private readonly double overConsolidationRatio; + + [DataMember] + private readonly double pop; + + [DataMember] + private readonly double degreeOfConsolidationPorePressureSoil; + + [DataMember] + private readonly double degreeOfConsolidationPorePressureLoad; + + [DataMember] + private readonly double dilatancy; + + [DataMember] + private readonly double externalLoad; + + [DataMember] + private readonly double hydrostaticPorePressure; + + [DataMember] + private readonly double leftForce; + + [DataMember] + private readonly double leftForceAngle; + + [DataMember] + private readonly double leftForceY; + + [DataMember] + private readonly double rightForce; + + [DataMember] + private readonly double rightForceAngle; + + [DataMember] + private readonly double rightForceY; + + [DataMember] + private readonly double loadStress; + + [DataMember] + private readonly double normalStress; + + [DataMember] + private readonly double porePressure; + + [DataMember] + private readonly double horizontalPorePressure; + + [DataMember] + private readonly double verticalPorePressure; + + [DataMember] + private readonly double piezometricPorePressure; + + [DataMember] + private readonly double effectiveStress; + + [DataMember] + private readonly double effectiveStressDaily; + + [DataMember] + private readonly double excessPorePressure; + + [DataMember] + private readonly double shearStress; + + [DataMember] + private readonly double soilStress; + + [DataMember] + private readonly double totalPorePressure; + + [DataMember] + private readonly double totalStress; + + [DataMember] + private readonly double weight; + + #endregion + } + } +} \ No newline at end of file Fisheye: Tag 4a30aea5c764fc20099bd2b42798590705555633 refers to a dead (removed) revision in file `Ringtoets/Storage/src/Ringtoets.Storage.Core/Serializers/MacroStabilityInwardsSliceXmlSerializer.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationEntityReadExtensionsTest.cs =================================================================== diff -u -r5a1e32bf0ca1dbbc967a1f6168abb94869105a64 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationEntityReadExtensionsTest.cs (.../MacroStabilityInwardsCalculationEntityReadExtensionsTest.cs) (revision 5a1e32bf0ca1dbbc967a1f6168abb94869105a64) +++ Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationEntityReadExtensionsTest.cs (.../MacroStabilityInwardsCalculationEntityReadExtensionsTest.cs) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -244,7 +244,7 @@ var calculationOutputEntity = new MacroStabilityInwardsCalculationOutputEntity { SlipPlaneTangentLinesXml = new TangentLinesXmlSerializer().ToXml(tangentLines), - SlidingCurveSliceXML = new MacroStabilityInwardsSliceXmlSerializer().ToXml(slices), + SlidingCurveSliceXML = new MacroStabilityInwardsSliceCollectionXmlSerializer().ToXml(slices), SlipPlaneLeftGridNrOfHorizontalPoints = random.Next(1, 100), SlipPlaneLeftGridNrOfVerticalPoints = random.Next(1, 100), SlipPlaneRightGridNrOfHorizontalPoints = random.Next(1, 100), Index: Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensionsTest.cs =================================================================== diff -u -rff51075f9bb18ac60d0ab4de5aa50dc87fe73554 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensionsTest.cs (.../MacroStabilityInwardsCalculationOutputEntityReadExtensionsTest.cs) (revision ff51075f9bb18ac60d0ab4de5aa50dc87fe73554) +++ Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Read/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityReadExtensionsTest.cs (.../MacroStabilityInwardsCalculationOutputEntityReadExtensionsTest.cs) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -67,7 +67,7 @@ ZValue = random.NextDouble(), ForbiddenZonesXEntryMin = random.NextDouble(), ForbiddenZonesXEntryMax = random.NextDouble(), - SlidingCurveSliceXML = new MacroStabilityInwardsSliceXmlSerializer().ToXml(slices), + SlidingCurveSliceXML = new MacroStabilityInwardsSliceCollectionXmlSerializer().ToXml(slices), SlidingCurveNonIteratedHorizontalForce = random.NextDouble(), SlidingCurveIteratedHorizontalForce = random.NextDouble(), SlidingCurveLeftSlidingCircleCenterX = random.NextDouble(), @@ -156,7 +156,7 @@ var random = new Random(31); return new MacroStabilityInwardsCalculationOutputEntity { - SlidingCurveSliceXML = new MacroStabilityInwardsSliceXmlSerializer().ToXml(new MacroStabilityInwardsSlice[0]), + SlidingCurveSliceXML = new MacroStabilityInwardsSliceCollectionXmlSerializer().ToXml(new MacroStabilityInwardsSlice[0]), SlipPlaneTangentLinesXml = new TangentLinesXmlSerializer().ToXml(new RoundedDouble[0]), SlipPlaneLeftGridNrOfHorizontalPoints = random.Next(1, 100), SlipPlaneLeftGridNrOfVerticalPoints = random.Next(1, 100), Index: Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Ringtoets.Storage.Core.Test.csproj =================================================================== diff -u -rdab1b18604b9fe0d41ead0dfe418908fa2102fa2 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Ringtoets.Storage.Core.Test.csproj (.../Ringtoets.Storage.Core.Test.csproj) (revision dab1b18604b9fe0d41ead0dfe418908fa2102fa2) +++ Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Ringtoets.Storage.Core.Test.csproj (.../Ringtoets.Storage.Core.Test.csproj) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -138,7 +138,7 @@ - + Index: Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializerTest.cs =================================================================== diff -u --- Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializerTest.cs (revision 0) +++ Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Serializers/MacroStabilityInwardsSliceCollectionXmlSerializerTest.cs (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -0,0 +1,156 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using System.Collections.Generic; +using Core.Common.Base.Geometry; +using Core.Common.TestUtil; +using NUnit.Framework; +using Ringtoets.MacroStabilityInwards.Data; +using Ringtoets.Storage.Core.Serializers; +using Ringtoets.Storage.Core.TestUtil.Serializers; + +namespace Ringtoets.Storage.Core.Test.Serializers +{ + [TestFixture] + public class MacroStabilityInwardsSliceCollectionXmlSerializerTest + { + [Test] + public void Constructor_ExpectedValues() + { + // Call + var serializer = new MacroStabilityInwardsSliceCollectionXmlSerializer(); + + // Assert + Assert.IsInstanceOf>(serializer); + SerializerTestHelper.AssertSerializedData(typeof(MacroStabilityInwardsSliceCollectionXmlSerializer.SerializableMacroStabilityInwardsSlice)); + } + + [Test] + public void GivenArrayOfMacroStabilityInwardsSlices_WhenConvertingRoundTrip_ThenEqualMacroStabilityInwardsSlices() + { + // Given + var random = new Random(31); + var original = new[] + { + new MacroStabilityInwardsSlice( + new Point2D(double.NaN, double.NaN), + new Point2D(double.NaN, double.NaN), + new Point2D(double.NaN, double.NaN), + new Point2D(double.NaN, double.NaN), + new MacroStabilityInwardsSlice.ConstructionProperties()), + new MacroStabilityInwardsSlice( + new Point2D(random.NextDouble(), random.NextDouble()), + new Point2D(random.NextDouble(), random.NextDouble()), + new Point2D(random.NextDouble(), random.NextDouble()), + new Point2D(random.NextDouble(), random.NextDouble()), + new MacroStabilityInwardsSlice.ConstructionProperties + { + Cohesion = random.NextDouble(), + FrictionAngle = random.NextDouble(), + CriticalPressure = random.NextDouble(), + OverConsolidationRatio = random.NextDouble(), + Pop = random.NextDouble(), + DegreeOfConsolidationPorePressureSoil = random.NextDouble(), + DegreeOfConsolidationPorePressureLoad = random.NextDouble(), + Dilatancy = random.NextDouble(), + ExternalLoad = random.NextDouble(), + HydrostaticPorePressure = random.NextDouble(), + LeftForce = random.NextDouble(), + LeftForceAngle = random.NextDouble(), + LeftForceY = random.NextDouble(), + RightForce = random.NextDouble(), + RightForceAngle = random.NextDouble(), + RightForceY = random.NextDouble(), + LoadStress = random.NextDouble(), + NormalStress = random.NextDouble(), + PorePressure = random.NextDouble(), + HorizontalPorePressure = random.NextDouble(), + VerticalPorePressure = random.NextDouble(), + PiezometricPorePressure = random.NextDouble(), + EffectiveStress = random.NextDouble(), + EffectiveStressDaily = random.NextDouble(), + ExcessPorePressure = random.NextDouble(), + ShearStress = random.NextDouble(), + SoilStress = random.NextDouble(), + TotalPorePressure = random.NextDouble(), + TotalStress = random.NextDouble(), + Weight = random.NextDouble() + }) + }; + var serializer = new MacroStabilityInwardsSliceCollectionXmlSerializer(); + + // When + string xml = serializer.ToXml(original); + MacroStabilityInwardsSlice[] roundtripResult = serializer.FromXml(xml); + + // Then + TestHelper.AssertCollectionsAreEqual(original, roundtripResult, new MacroStabilityInwardsSliceComparer()); + } + + private class MacroStabilityInwardsSliceComparer : IEqualityComparer + { + public bool Equals(MacroStabilityInwardsSlice x, MacroStabilityInwardsSlice y) + { + return x.TopLeftPoint.Equals(y.TopLeftPoint) + && x.TopRightPoint.Equals(y.TopRightPoint) + && x.BottomLeftPoint.Equals(y.BottomLeftPoint) + && x.BottomRightPoint.Equals(y.BottomRightPoint) + && x.Cohesion.Equals(y.Cohesion) + && x.FrictionAngle.Equals(y.FrictionAngle) + && x.CriticalPressure.Equals(y.CriticalPressure) + && x.OverConsolidationRatio.Equals(y.OverConsolidationRatio) + && x.Pop.Equals(y.Pop) + && x.DegreeOfConsolidationPorePressureSoil.Equals(y.DegreeOfConsolidationPorePressureSoil) + && x.DegreeOfConsolidationPorePressureLoad.Equals(y.DegreeOfConsolidationPorePressureLoad) + && x.Dilatancy.Equals(y.Dilatancy) + && x.ExternalLoad.Equals(y.ExternalLoad) + && x.HydrostaticPorePressure.Equals(y.HydrostaticPorePressure) + && x.LeftForce.Equals(y.LeftForce) + && x.LeftForceAngle.Equals(y.LeftForceAngle) + && x.LeftForceY.Equals(y.LeftForceY) + && x.RightForce.Equals(y.RightForce) + && x.RightForceAngle.Equals(y.RightForceAngle) + && x.RightForceY.Equals(y.RightForceY) + && x.LoadStress.Equals(y.LoadStress) + && x.NormalStress.Equals(y.NormalStress) + && x.PorePressure.Equals(y.PorePressure) + && x.HorizontalPorePressure.Equals(y.HorizontalPorePressure) + && x.VerticalPorePressure.Equals(y.VerticalPorePressure) + && x.PiezometricPorePressure.Equals(y.PiezometricPorePressure) + && x.EffectiveStress.Equals(y.EffectiveStress) + && x.EffectiveStressDaily.Equals(y.EffectiveStressDaily) + && x.ExcessPorePressure.Equals(y.ExcessPorePressure) + && x.ShearStress.Equals(y.ShearStress) + && x.SoilStress.Equals(y.SoilStress) + && x.TotalPorePressure.Equals(y.TotalPorePressure) + && x.TotalStress.Equals(y.TotalStress) + && x.Weight.Equals(y.Weight); + } + + public int GetHashCode(MacroStabilityInwardsSlice obj) + { + throw new NotImplementedException(); + } + } + } +} \ No newline at end of file Fisheye: Tag 4a30aea5c764fc20099bd2b42798590705555633 refers to a dead (removed) revision in file `Ringtoets/Storage/test/Ringtoets.Storage.Core.Test/Serializers/MacroStabilityInwardsSliceXmlSerializerTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Storage/test/Ringtoets.Storage.Core.TestUtil/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityTestHelper.cs =================================================================== diff -u -rff51075f9bb18ac60d0ab4de5aa50dc87fe73554 -r4a30aea5c764fc20099bd2b42798590705555633 --- Ringtoets/Storage/test/Ringtoets.Storage.Core.TestUtil/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityTestHelper.cs (.../MacroStabilityInwardsCalculationOutputEntityTestHelper.cs) (revision ff51075f9bb18ac60d0ab4de5aa50dc87fe73554) +++ Ringtoets/Storage/test/Ringtoets.Storage.Core.TestUtil/MacroStabilityInwards/MacroStabilityInwardsCalculationOutputEntityTestHelper.cs (.../MacroStabilityInwardsCalculationOutputEntityTestHelper.cs) (revision 4a30aea5c764fc20099bd2b42798590705555633) @@ -93,7 +93,7 @@ private static void AssertSlidingCurveProperties(MacroStabilityInwardsSlidingCurve slidingCurve, MacroStabilityInwardsCalculationOutputEntity entity) { - string expectedSlicesXml = new MacroStabilityInwardsSliceXmlSerializer().ToXml(slidingCurve.Slices); + string expectedSlicesXml = new MacroStabilityInwardsSliceCollectionXmlSerializer().ToXml(slidingCurve.Slices); Assert.AreEqual(expectedSlicesXml, entity.SlidingCurveSliceXML); AssertAreEqual(slidingCurve.IteratedHorizontalForce, entity.SlidingCurveIteratedHorizontalForce);