Index: test/Plugins/Wti/Wti.IO.Test/Builders/SoilLayer2DTest.cs =================================================================== diff -u -r46c2fd882297a1243b82d8cacfbb4fc1881f2157 -r947dc8ecd6e0b674f39bf1a22aef489ec8cc21fa --- test/Plugins/Wti/Wti.IO.Test/Builders/SoilLayer2DTest.cs (.../SoilLayer2DTest.cs) (revision 46c2fd882297a1243b82d8cacfbb4fc1881f2157) +++ test/Plugins/Wti/Wti.IO.Test/Builders/SoilLayer2DTest.cs (.../SoilLayer2DTest.cs) (revision 947dc8ecd6e0b674f39bf1a22aef489ec8cc21fa) @@ -10,14 +10,14 @@ public class SoilLayer2DTest { [Test] - public void DefaultConstructor_Always_NotInstantiatedOuterAndInnerLoops() + public void DefaultConstructor_Always_NotInstantiatedOuterLoopAndEmptyInnerLoops() { // Call var result = new SoilLayer2D(); // Assert Assert.IsNull(result.OuterLoop); - Assert.IsNull(result.InnerLoop); + CollectionAssert.IsEmpty(result.InnerLoops); } [Test] @@ -58,5 +58,29 @@ CollectionAssert.IsEmpty(result); Assert.AreEqual(double.MaxValue, bottom); } + + [Test] + public void AsPipingSoilLayers_WithOuterLoopIntersectingX_ReturnsBottomAndLayerWithTop() + { + // Setup + var layer = new SoilLayer2D + { + OuterLoop = new HashSet + { + new Point3D + { + X = 0.1, Z = new Random(22).NextDouble() + } + } + }; + double bottom; + + // Call + var result = layer.AsPipingSoilLayers(0.0, out bottom); + + // Assert + CollectionAssert.IsEmpty(result); + Assert.AreEqual(double.MaxValue, bottom); + } } } \ No newline at end of file