public void LineSegment_Slice_ShouldReturnOriginalSegment_IfPointIsOnBasePointLineSegment() { LineSegment lineSegment = new LineSegment(Point.MakePointWithInches(1, 1, 1)); Point point = Point.MakePointWithInches(0, 0, 0); List<LineSegment> lineSegmentList = new List<LineSegment>(); lineSegmentList.Add(lineSegment); lineSegment.Slice(point).Should().BeEquivalentTo(lineSegmentList); }
public void LineSegment_Slice_ShouldThrowException_IfPointIsNull() { LineSegment lineSegment = new LineSegment(Point.MakePointWithInches(1, 1, 1)); Point point = null; Action slice = () => lineSegment.Slice(point); slice.ShouldThrow<Exception>(); }
public void LineSegment_Slice_ShouldReturnListWithSplicedLineSegments_IfPointIsOnLineSegment() { LineSegment lineSegment = new LineSegment(Point.MakePointWithInches(1, 1, 1)); Point point = Point.MakePointWithInches(0.5, 0.5, 0.5); LineSegment splicedLineSegment1 = new LineSegment(Point.MakePointWithInches(0.5, 0.5, 0.5)); LineSegment splicedLineSegment2 = new LineSegment(Point.MakePointWithInches(0.5, 0.5, 0.5), Point.MakePointWithInches(1, 1, 1)); List<LineSegment> lineSegmentList = new List<LineSegment>(); lineSegmentList.Add(splicedLineSegment1); lineSegmentList.Add(splicedLineSegment2); lineSegment.Slice(point).Should().BeEquivalentTo(lineSegmentList); }