protected void warn(String warning) {
    LOG.warn(warning);
  }
@Test
  public void testWarnWhenMultiplePatternsMatch() {
    StrictFieldProjectionFilter filter = createMockBuilder(StrictFieldProjectionFilter.class)
        .withConstructor(Arrays.asList("a.b.c.{x_average,z_average}", "a.*_average"))
        .addMockedMethod("warn")
        .createMock();

    // set expectations
    filter.warn("Field path: 'a.b.c.x_average' matched more than one glob path pattern. "
        + "First match: 'a.b.c.{x_average,z_average}' (when expanded to 'a.b.c.x_average') "
        + "second match:'a.*_average' (when expanded to 'a.*_average')");
    filter.warn("Field path: 'a.b.c.z_average' matched more than one glob path pattern. "
        + "First match: 'a.b.c.{x_average,z_average}' (when expanded to 'a.b.c.z_average') "
        + "second match:'a.*_average' (when expanded to 'a.*_average')");

    replay(filter);

    assertMatches(filter, "a.b.c.x_average", "a.b.c.z_average", "a.other.w_average");
    assertDoesNotMatch(filter, "hello");
    verify(filter);
  }