package org.geojson; import org.junit.Test; import java.util.Arrays; import static org.junit.Assert.assertEquals; public class ToStringTest { @Test public void itShouldToStringCrs() throws Exception { assertEquals("Crs{type='name', properties={}}", new Crs().toString()); } @Test public void itShouldToStringFeature() throws Exception { assertEquals("Feature{properties={}, geometry=null, id='null'}", new Feature().toString()); } @Test public void itShouldToStringFeatureCollection() throws Exception { assertEquals("FeatureCollection{features=[]}", new FeatureCollection().toString()); } @Test public void itShouldToStringPoint() throws Exception { Point geometry = new Point(10, 20); assertEquals( "Point{coordinates=LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringPointWithAdditionalElements() { Point geometry = new Point(10, 20, 30, 40D, 50D); assertEquals( "Point{coordinates=LngLatAlt{longitude=10.0, latitude=20.0, altitude=30.0, additionalElements=[40.0, 50.0]}} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringPointWithAdditionalElementsAndIgnoreNulls() { Point geometry = new Point(10, 20, 30, 40D, 50D); assertEquals( "Point{coordinates=LngLatAlt{longitude=10.0, latitude=20.0, altitude=30.0, additionalElements=[40.0, 50.0]}} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringPolygon() throws Exception { Polygon geometry = new Polygon(new LngLatAlt(10, 20), new LngLatAlt(30, 40), new LngLatAlt(10, 40), new LngLatAlt(10, 20)); assertEquals( "Polygon{} Geometry{coordinates=[[LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}, " + "LngLatAlt{longitude=30.0, latitude=40.0, altitude=NaN}, LngLatAlt{longitude=10.0, latitude=40.0, altitude=NaN}, " + "LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}]]} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringMultiPolygon() throws Exception { MultiPolygon geometry = new MultiPolygon(new Polygon(new LngLatAlt(10, 20), new LngLatAlt(30, 40), new LngLatAlt(10, 40), new LngLatAlt(10, 20))); geometry.add(new Polygon(new LngLatAlt(5, 20), new LngLatAlt(30, 40), new LngLatAlt(10, 40), new LngLatAlt(5, 20))); assertEquals("MultiPolygon{} Geometry{coordinates=[[[LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}, " + "LngLatAlt{longitude=30.0, latitude=40.0, altitude=NaN}, " + "LngLatAlt{longitude=10.0, latitude=40.0, altitude=NaN}, " + "LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}]], " + "[[LngLatAlt{longitude=5.0, latitude=20.0, altitude=NaN}, " + "LngLatAlt{longitude=30.0, latitude=40.0, altitude=NaN}, " + "LngLatAlt{longitude=10.0, latitude=40.0, altitude=NaN}, " + "LngLatAlt{longitude=5.0, latitude=20.0, altitude=NaN}]]]} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringLineString() throws Exception { LineString geometry = new LineString(new LngLatAlt(49, 9), new LngLatAlt(41, 1)); assertEquals("LineString{} MultiPoint{} Geometry{coordinates=[" + "LngLatAlt{longitude=49.0, latitude=9.0, altitude=NaN}, " + "LngLatAlt{longitude=41.0, latitude=1.0, altitude=NaN}]} GeoJsonObject{}", geometry.toString()); } @Test public void itShouldToStringMultiLineString() throws Exception { MultiLineString geometry = new MultiLineString(Arrays.asList(new LngLatAlt(49, 9), new LngLatAlt(41, 1))); geometry.add(Arrays.asList(new LngLatAlt(10, 20), new LngLatAlt(30, 40))); assertEquals("MultiLineString{} Geometry{coordinates=[[LngLatAlt{longitude=49.0, latitude=9.0, altitude=NaN}, " + "LngLatAlt{longitude=41.0, latitude=1.0, altitude=NaN}], " + "[LngLatAlt{longitude=10.0, latitude=20.0, altitude=NaN}, " + "LngLatAlt{longitude=30.0, latitude=40.0, altitude=NaN}]]} GeoJsonObject{}", geometry.toString()); } }