@Test
  public void testCached() throws Exception {
    DummyFilter dFilter = new DummyFilter();
    dFilter.init(new DummyFilterConfig());
    dFilter.doFilter(null, null, null);
    Operation first = getLastEntered();
    assertNotNull(first);
    reset(spiedOperationCollector);
    dFilter.doFilter(null, null, null);
    Operation second = getLastEntered();

    // We cache the entire Operation, but return different references
    assertTrue(first.equals(second));
    assertEquals(first.getLabel(), second.getLabel());
    assertEquals(first.get("filterClass"), second.get("filterClass"));
    assertEquals(first.get("filterName"), second.get("filterName"));
  }