Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil.Test/TestPipingFailureMechanismTest.cs =================================================================== diff -u -r026cc14e6eb321e7e3e1c16d2e278cab74602339 -r3239ee53997bb2ab3ca97266f6a5f83868049535 --- Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil.Test/TestPipingFailureMechanismTest.cs (.../TestPipingFailureMechanismTest.cs) (revision 026cc14e6eb321e7e3e1c16d2e278cab74602339) +++ Ringtoets/Piping/test/Ringtoets.Piping.Data.TestUtil.Test/TestPipingFailureMechanismTest.cs (.../TestPipingFailureMechanismTest.cs) (revision 3239ee53997bb2ab3ca97266f6a5f83868049535) @@ -1,5 +1,32 @@ -using NUnit.Framework; +// Copyright (C) Stichting Deltares 2016. 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.Collections.Generic; +using System.Linq; +using Core.Common.Base; +using Core.Common.Base.Geometry; +using NUnit.Framework; +using Ringtoets.Common.Data.FailureMechanism; +using Ringtoets.Piping.Primitives; + namespace Ringtoets.Piping.Data.TestUtil.Test { [TestFixture] @@ -14,5 +41,39 @@ // Assert Assert.AreEqual(24, failureMechanism.Contribution); } + + [Test] + public void GetFailureMechanismWithSurfaceLinesAndStochasticSoilModels() + { + // Call + TestPipingFailureMechanism failureMechanism = TestPipingFailureMechanism.GetFailureMechanismWithSurfaceLinesAndStochasticSoilModels(); + + // Assert + Assert.AreEqual(24, failureMechanism.Contribution); + + ObservableCollectionWithSourcePath surfaceLines = failureMechanism.SurfaceLines; + Assert.AreEqual("path/to/surfaceLines", surfaceLines.SourcePath); + Assert.AreEqual(1, surfaceLines.Count); + RingtoetsPipingSurfaceLine[] surfaceLineArray = surfaceLines.ToArray(); + RingtoetsPipingSurfaceLine surfaceLine = surfaceLineArray[0]; + Assert.AreEqual(new Point2D(0.0, 0.0), surfaceLine.ReferenceLineIntersectionWorldPoint); + CollectionAssert.IsNotEmpty(surfaceLine.LocalGeometry); + + Assert.AreEqual("path/to/stochasticSoilModels", failureMechanism.StochasticSoilModels.SourcePath); + Assert.AreEqual(1, failureMechanism.StochasticSoilModels.Count); + + IEnumerable sections = failureMechanism.Sections; + FailureMechanismSection[] sectionArray = sections.ToArray(); + Assert.AreEqual(1, sectionArray.Length); + + FailureMechanismSection section = sectionArray[0]; + Assert.AreEqual("Section", section.Name); + var expectedGeometry = new List + { + new Point2D(0.0, 0.0), + new Point2D(5.0, 0.0) + }; + CollectionAssert.AreEqual(expectedGeometry, section.Points); + } } -} +} \ No newline at end of file