aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/geojson/ToStringTest.java
blob: e892c5c5b449322e6eb8b30cc9cb08684eef9cbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
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());
	}
}