package com.revolsys.geometry.test.editor; import org.junit.Assert; import org.junit.Test; import com.revolsys.geometry.model.GeometryFactory; import com.revolsys.geometry.model.LineString; import com.revolsys.geometry.model.editor.LineStringEditor; public class LineStringEditorTest { private static final GeometryFactory WGS84_2D = GeometryFactory.wgs84().convertAxisCount(2); private static final LineString LINE_STRING = WGS84_2D.lineString(2, 100.0, 200.0, 110.0, 210.0); @Test public void testNotModified() { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(); lineEditor.setZ(13); final LineString newLineString = lineEditor.newGeometry(); Assert.assertSame(LINE_STRING, newLineString); } @Test public void testSetCoordinates() { for (int i = 0; i < 4; i++) { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(4); final int newValue = i * 10; lineEditor.setCoordinate(0, i, newValue); final LineString newLineString = lineEditor.newGeometry(); Assert.assertNotSame(LINE_STRING, newLineString); Assert.assertEquals(newValue, newLineString.getCoordinate(0, i), 0.0); } } @Test public void testSetM() { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(4); lineEditor.setM(0, 10); final LineString newLineString = lineEditor.newGeometry(); Assert.assertNotSame(LINE_STRING, newLineString); Assert.assertEquals(10.0, newLineString.getM(0), 0.0); } @Test public void testSetX() { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(3); lineEditor.setX(0, 10); final LineString newLineString = lineEditor.newGeometry(); Assert.assertNotSame(LINE_STRING, newLineString); Assert.assertEquals(10.0, newLineString.getX(0), 0.0); } @Test public void testSetY() { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(3); lineEditor.setY(0, 10); final LineString newLineString = lineEditor.newGeometry(); Assert.assertNotSame(LINE_STRING, newLineString); Assert.assertEquals(10.0, newLineString.getY(0), 0.0); } @Test public void testSetZ() { final LineStringEditor lineEditor = LINE_STRING.newGeometryEditor(3); lineEditor.setZ(0, 10); final LineString newLineString = lineEditor.newGeometry(); Assert.assertNotSame(LINE_STRING, newLineString); Assert.assertEquals(10.0, newLineString.getZ(0), 0.0); } }