Skip to content

Commit b075a78

Browse files
authored
Move TurfAssertions.getCoord() to TurfMeta.getCoord() to follow Turf.js (#818)
1 parent 950f8c2 commit b075a78

4 files changed

Lines changed: 24 additions & 24 deletions

File tree

services-turf/src/main/java/com/mapbox/turf/TurfAssertions.java

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import com.mapbox.geojson.Feature;
44
import com.mapbox.geojson.FeatureCollection;
55
import com.mapbox.geojson.GeoJson;
6-
import com.mapbox.geojson.Point;
76
import com.mapbox.core.utils.TextUtils;
87

98
/**
@@ -19,21 +18,6 @@ private TurfAssertions() {
1918
// Private constructor preventing initialization of this class
2019
}
2120

22-
/**
23-
* Unwrap a coordinate {@link Point} from a Feature with a Point geometry.
24-
*
25-
* @param obj any value
26-
* @return a coordinate
27-
* @see <a href="http://turfjs.org/docs/#getcoord">Turf getCoord documentation</a>
28-
* @since 1.2.0
29-
*/
30-
public static Point getCoord(Feature obj) {
31-
if (obj.geometry() instanceof Point) {
32-
return (Point) obj.geometry();
33-
}
34-
throw new TurfException("A feature with a Point geometry is required.");
35-
}
36-
3721
/**
3822
* Enforce expectations about types of GeoJson objects for Turf.
3923
*

services-turf/src/main/java/com/mapbox/turf/TurfMeta.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import android.support.annotation.NonNull;
44

5+
import com.mapbox.geojson.Feature;
56
import com.mapbox.geojson.LineString;
67
import com.mapbox.geojson.MultiLineString;
78
import com.mapbox.geojson.MultiPoint;
@@ -140,4 +141,19 @@ public static List<Point> coordAll(@NonNull MultiPolygon multiPolygon, boolean e
140141
}
141142
return coords;
142143
}
144+
145+
/**
146+
* Unwrap a coordinate {@link Point} from a Feature with a Point geometry.
147+
*
148+
* @param obj any value
149+
* @return a coordinate
150+
* @see <a href="http://turfjs.org/docs/#getcoord">Turf getCoord documentation</a>
151+
* @since 3.2.0
152+
*/
153+
public static Point getCoord(Feature obj) {
154+
if (obj.geometry() instanceof Point) {
155+
return (Point) obj.geometry();
156+
}
157+
throw new TurfException("A Feature with a Point geometry is required.");
158+
}
143159
}

services-turf/src/test/java/com/mapbox/turf/TurfAssertionsTest.java

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -108,12 +108,4 @@ public void testInvariantCollectionOf4() {
108108
+ "type: 'Point', coordinates: [0, 0]}, properties: {}}]}";
109109
TurfAssertions.collectionOf(FeatureCollection.fromJson(json), "Point", "myfn");
110110
}
111-
112-
113-
@Test
114-
public void testInvariantGetCoord() {
115-
String jsonFeature = "{type: 'Feature', geometry: {type: 'Point', coordinates: [1, 2]}}";
116-
assertEquals(TurfAssertions.getCoord(Feature.fromJson(jsonFeature)),
117-
Point.fromLngLat(1, 2));
118-
}
119111
}

services-turf/src/test/java/com/mapbox/turf/TurfMetaTest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.mapbox.turf;
22

3+
import com.mapbox.geojson.Feature;
34
import com.mapbox.geojson.LineString;
45
import com.mapbox.geojson.Point;
56
import com.mapbox.geojson.Polygon;
@@ -77,4 +78,11 @@ public void coordAllMultiPolygon() throws TurfException {
7778
assertEquals(resultList.get(2), Point.fromLngLat(0, 1));
7879
assertEquals(resultList.get(3), Point.fromLngLat(0, 0));
7980
}
81+
82+
@Test
83+
public void testInvariantGetCoord() {
84+
String jsonFeature = "{type: 'Feature', geometry: {type: 'Point', coordinates: [1, 2]}}";
85+
assertEquals(TurfMeta.getCoord(Feature.fromJson(jsonFeature)),
86+
Point.fromLngLat(1, 2));
87+
}
8088
}

0 commit comments

Comments
 (0)