package org.geotools.filter.function; import static org.junit.Assert.*; import org.geotools.factory.CommonFactoryFinder; import org.geotools.referencing.CRS; import org.geotools.referencing.crs.DefaultGeographicCRS; import org.junit.Before; import org.junit.Test; import org.opengis.filter.FilterFactory2; import org.opengis.filter.expression.Function; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.io.WKTReader; public class FilterFunction_setCRSTest { FilterFactory2 ff = CommonFactoryFinder.getFilterFactory2(); Geometry g; @Before public void setup() throws Exception { g = new WKTReader().read("POINT(0 0)"); } @Test public void setCRSObject() { Function f = ff.function("setCRS", ff.literal(g), ff.literal(DefaultGeographicCRS.WGS84)); Geometry sg = (Geometry) f.evaluate(null); assertEquals(DefaultGeographicCRS.WGS84, sg.getUserData()); } @Test public void setCRSCode() throws Exception { Function f = ff.function("setCRS", ff.literal(g), ff.literal("EPSG:4326")); Geometry sg = (Geometry) f.evaluate(null); assertEquals(CRS.decode("EPSG:4326"), sg.getUserData()); } @Test public void setCRSWkt() { Function f = ff.function("setCRS", ff.literal(g), ff.literal(DefaultGeographicCRS.WGS84.toWKT())); Geometry sg = (Geometry) f.evaluate(null); assertTrue(CRS.equalsIgnoreMetadata(DefaultGeographicCRS.WGS84, sg.getUserData())); } }