package com.revolsys.geometry.test.old.operation; import com.revolsys.geometry.model.Geometry; import com.revolsys.geometry.model.GeometryFactory; import com.revolsys.geometry.model.LinearRing; import com.revolsys.geometry.model.Polygon; import com.revolsys.geometry.operation.valid.IsValidOp; import junit.framework.TestCase; /** * Tests validating geometries with * non-closed rings. * * @author Martin Davis * @version 1.7 */ public class ValidClosedRingTest extends TestCase { private static GeometryFactory geometryFactory = GeometryFactory.DEFAULT_3D; public static void main(final String[] args) { junit.textui.TestRunner.run(ValidClosedRingTest.class); } public ValidClosedRingTest(final String name) { super(name); } private void checkIsValid(final Geometry geom, final boolean expected) { final IsValidOp validator = new IsValidOp(geom); final boolean isValid = validator.isValid(); assertTrue(isValid == expected); } Geometry fromWKT(final String wkt) { Geometry geom = null; try { geom = geometryFactory.geometry(wkt); } catch (final Exception ex) { ex.printStackTrace(); } return geom; } public void testGoodLinearRing() { final LinearRing ring = (LinearRing)fromWKT("LINEARRING (0 0, 0 10, 10 10, 10 0, 0 0)"); checkIsValid(ring, true); } public void testGoodPolygon() { final Polygon poly = (Polygon)fromWKT("POLYGON ((0 0, 0 10, 10 10, 10 0, 0 0))"); checkIsValid(poly, true); } }