Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.TestUtil/MacroStabilityInwardsOutputViewChartDataAssert.cs =================================================================== diff -u -ra371ae048cf582e8a9cad8436a21c2b9b18dc793 -r2351e33d2db5e822abd37b63a88930d9239528b7 --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.TestUtil/MacroStabilityInwardsOutputViewChartDataAssert.cs (.../MacroStabilityInwardsOutputViewChartDataAssert.cs) (revision a371ae048cf582e8a9cad8436a21c2b9b18dc793) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.TestUtil/MacroStabilityInwardsOutputViewChartDataAssert.cs (.../MacroStabilityInwardsOutputViewChartDataAssert.cs) (revision 2351e33d2db5e822abd37b63a88930d9239528b7) @@ -51,13 +51,14 @@ private const int surfaceLevelOutsideIndex = 13; private const int waternetZonesExtremeIndex = 14; private const int waternetZonesDailyIndex = 15; - private const int leftGridIndex = 16; - private const int rightGridIndex = 17; - private const int slicesIndex = 18; - private const int slipPlaneIndex = 19; - private const int activeCircleRadiusIndex = 20; - private const int passiveCircleRadiusIndex = 21; - private const int nrOfChartData = 22; + private const int tangentLinesIndex = 16; + private const int leftGridIndex = 17; + private const int rightGridIndex = 18; + private const int slicesIndex = 19; + private const int slipPlaneIndex = 20; + private const int activeCircleRadiusIndex = 21; + private const int passiveCircleRadiusIndex = 22; + private const int nrOfChartData = 23; /// /// Asserts whether corresponds to the input of . @@ -97,6 +98,9 @@ MacroStabilityInwardsViewChartDataAssert.AssertGridChartData(calculationScenario.Output.SlipPlane.RightGrid, (ChartPointData) actual.Collection.ElementAt(rightGridIndex)); + AssertTangentLinesChartData(calculationScenario.Output.SlipPlane.TangentLines, calculationScenario.InputParameters.SurfaceLine, + (ChartMultipleLineData) actual.Collection.ElementAt(tangentLinesIndex)); + AssertSlicesChartData(calculationScenario.Output.SlidingCurve.Slices, (ChartMultipleAreaData) actual.Collection.ElementAt(slicesIndex)); @@ -135,20 +139,23 @@ ChartData[] chartDataArray = chartDataCollection.Collection.ToArray(); Assert.AreEqual(nrOfChartData, chartDataArray.Length); + var tangentLinesData = (ChartMultipleLineData) chartDataArray[tangentLinesIndex]; var leftGridData = (ChartPointData) chartDataArray[leftGridIndex]; var rightGridData = (ChartPointData) chartDataArray[rightGridIndex]; var slicesData = (ChartMultipleAreaData) chartDataArray[slicesIndex]; var slipPlaneData = (ChartLineData) chartDataArray[slipPlaneIndex]; var activeCircleRadiusData = (ChartLineData) chartDataArray[activeCircleRadiusIndex]; var passiveCircleRadiusData = (ChartLineData) chartDataArray[passiveCircleRadiusIndex]; + CollectionAssert.IsEmpty(tangentLinesData.Lines); CollectionAssert.IsEmpty(leftGridData.Points); CollectionAssert.IsEmpty(rightGridData.Points); CollectionAssert.IsEmpty(slicesData.Areas); CollectionAssert.IsEmpty(slipPlaneData.Points); CollectionAssert.IsEmpty(activeCircleRadiusData.Points); CollectionAssert.IsEmpty(passiveCircleRadiusData.Points); + Assert.AreEqual("Tangentlijnen", tangentLinesData.Name); Assert.AreEqual("Linker grid", leftGridData.Name); Assert.AreEqual("Rechter grid", rightGridData.Name); Assert.AreEqual("Lamellen", slicesData.Name); @@ -214,6 +221,33 @@ } /// + /// Asserts whether corresponds to + /// and . + /// + /// The original tangent line Y-coordinates. + /// The original surface line. + /// The actual . + /// Thrown when + /// does not correspond to and . + /// + private static void AssertTangentLinesChartData(IEnumerable tangentLines, + MacroStabilityInwardsSurfaceLine surfaceLine, + ChartMultipleLineData actual) + { + CollectionAssert.IsNotEmpty(actual.Lines); + double[] tangentLinesArray = tangentLines.ToArray(); + for (var i = 0; i < tangentLinesArray.Length; i++) + { + var expectedPoints = new[] + { + new Point2D(surfaceLine.LocalGeometry.First().X, tangentLinesArray[i]), + new Point2D(surfaceLine.LocalGeometry.Last().X, tangentLinesArray[i]) + }; + CollectionAssert.AreEqual(expectedPoints, actual.Lines.ElementAt(i)); + } + } + + /// /// Asserts whether corresponds to . /// /// The original slices.