public void ToGeometryMultiLineStringReturnsExpectedResult() { _fixture.CustomizePolyLineM(); var input = _fixture.Create <PolyLineM>(); var result = GeometryTranslator.ToGeometryMultiLineString(input); Assert.Equal(input.NumberOfParts, result.Geometries.Length); Assert.Equal(input.NumberOfPoints, result.NumPoints); Assert.Equal(input.Points, result .Geometries .SelectMany(geometry => Enumerable .Range(0, geometry.NumPoints) .Select(index => ((NetTopologySuite.Geometries.LineString)geometry).GetPointN(index)) ) .Select(point => new Point(point.X, point.Y)) .ToArray() ); var lines = new List <NetTopologySuite.Geometries.LineString>(result.Geometries.Cast <NetTopologySuite.Geometries.LineString>()); Assert.Equal( input.Measures, lines .SelectMany(line => Enumerable .Range(0, line.NumPoints) .Select(index => line.CoordinateSequence.GetOrdinate(index, NetTopologySuite.Geometries.Ordinate.M))) ); }
public void ToGeometryMultiLineStringCanNotBeNull() { Assert.Throws <ArgumentNullException>( () => GeometryTranslator.ToGeometryMultiLineString(null)); }