Assert.assertNotNull("Filter expected", resultFilter);
Assert.assertTrue(resultFilter instanceof PropertyIsLike);
PropertyIsLike expected = (PropertyIsLike) FilterECQLSample.getSample(FilterECQLSample.FUNCTION_LIKE_ECQL_PATTERN);
Assert.assertEquals("like filter was expected", expected, resultFilter);
// test for strToUpperCase function
resultFilter = ECQL.toFilter( "strToUpperCase(anAttribute) like '%BB%'");
Assert.assertTrue(resultFilter instanceof PropertyIsLike);
PropertyIsLike resultLike = (PropertyIsLike) resultFilter;
Expression resultExpression = resultLike.getExpression();
Assert.assertTrue( resultExpression instanceof Function);
Function resultFunction = (Function)resultExpression;
Assert.assertEquals("strToUpperCase", resultFunction.getName());
Assert.assertEquals( resultLike.getLiteral(), "%BB%" );
}