@Test public void testDestroy() throws Exception { final DebugChecker checker = new DebugChecker(); final DebugAuditAdapter auditAdapter = new DebugAuditAdapter(); checker.addListener(auditAdapter); final DebugFilter filter = new DebugFilter(); checker.addFilter(filter); // should remove al listeners and filters checker.destroy(); // Let's try fire some events checker.fireAuditStarted(); checker.fireAuditFinished(); checker.fireFileStarted("Some File Name"); checker.fireFileFinished("Some File Name"); final SortedSet<LocalizedMessage> messages = Sets.newTreeSet(); messages.add( new LocalizedMessage( 0, 0, "a Bundle", "message.key", new Object[] {"arg"}, null, getClass(), null)); checker.fireErrors("Some File Name", messages); assertFalse("Checker.destroy() doesn't remove listeners.", auditAdapter.wasCalled()); assertFalse("Checker.destroy() doesn't remove filters.", filter.wasCalled()); }
@Test public void testRemoveFilter() throws Exception { final DebugChecker checker = new DebugChecker(); final DebugFilter filter = new DebugFilter(); final DebugFilter f2 = new DebugFilter(); checker.addFilter(filter); checker.addFilter(f2); checker.removeFilter(filter); f2.resetFilter(); final SortedSet<LocalizedMessage> messages = Sets.newTreeSet(); messages.add( new LocalizedMessage( 0, 0, "a Bundle", "message.key", new Object[] {"arg"}, null, getClass(), null)); checker.fireErrors("Some File Name", messages); assertTrue("Checker.fireErrors() doesn't call filter", f2.wasCalled()); assertFalse("Checker.fireErrors() does call removed filter", filter.wasCalled()); }