@Test
public void testParse_FilterOp() throws Exception {

  List<Token> listTokens = new ArrayList<Token>();
  listTokens.add(new Token(Token.TYPE.RELATIONAL_OPERATOR_FUNC, ".matches("));
  listTokens.add(new Token(Token.TYPE.PROPERTY_OPERAND, "foo"));
  listTokens.add(new Token(Token.TYPE.VALUE_OPERAND, ".*"));
  listTokens.add(new Token(Token.TYPE.BRACKET_CLOSE, ")"));
  QueryParser parser = new QueryParser();
  Predicate p = parser.parse(listTokens.toArray(new Token[listTokens.size()]));
  FilterPredicate fp = new FilterPredicate("foo", ".*");
  assertEquals(fp, p);
}