@Test
  public void testLikeFilter() throws Exception {
    final String wildcard = "%";
    final String single = "?";
    final String escape = "\\";
    PropertyIsLike like =
        ff.like(
            ff.property("/measurement/determinand_description"),
            "%n_1_1",
            wildcard,
            single,
            escape,
            true,
            MatchAction.ONE);

    PropertyIsLike unmapped = (PropertyIsLike) like.accept(visitor, null);
    assertEquals(like.getLiteral(), unmapped.getLiteral());
    assertEquals(like.getWildCard(), unmapped.getWildCard());
    assertEquals(like.getSingleChar(), unmapped.getSingleChar());
    assertEquals(like.getEscape(), unmapped.getEscape());
    assertEquals(like.isMatchingCase(), unmapped.isMatchingCase());
    assertEquals(like.getMatchAction(), unmapped.getMatchAction());

    Expression unmappedExpr = unmapped.getExpression();
    assertTrue(unmappedExpr instanceof PropertyName);
    assertEquals("determinand_description", ((PropertyName) unmappedExpr).getPropertyName());
  }