public void testDWithin() throws Exception {
PropertyName left = new AttributeExpressionImpl(testSchema, "testGeometry");
Coordinate[] coords2 = new Coordinate[5];
coords2[0] = new Coordinate(10, 10);
coords2[1] = new Coordinate(15, 10);
coords2[2] = new Coordinate(15, 15);
coords2[3] = new Coordinate(10, 15);
coords2[4] = new Coordinate(10, 10);
GeometryFactory gf = new GeometryFactory(new PrecisionModel());
Literal right =
new LiteralExpressionImpl(gf.createPolygon(gf.createLinearRing(coords2), null));
DWithin filter = fac.dwithin(left, right, 20, "m");
LOGGER.finer(filter.toString());
LOGGER.finer("contains feature: " + filter.evaluate(testFeature));
assertTrue(filter.evaluate(testFeature));
filter = fac.dwithin(left, right, 2, "m");
LOGGER.finer(filter.toString());
LOGGER.finer("contains feature: " + filter.evaluate(testFeature));
assertFalse(filter.evaluate(testFeature));
right = new LiteralExpressionImpl(null);
filter = fac.dwithin(left, right, 2, "m");
LOGGER.finer(filter.toString());
LOGGER.finer("contains feature: " + filter.evaluate(testFeature));
assertFalse(filter.evaluate(testFeature));
}