if (ev.containsListener(currentListener, EventType.DONE)) { ev.removeListener(currentListener, EventType.DONE);
checkState(ev.containsListener(this, EventType.DONE)); ev.removeListener(this, EventType.DONE); exec = true;
@Test public void removeTest() { final EventDispatcher disp = new EventDispatcher(EventTypes.values()); final EventAPI eventAPI = disp.getPublicEventAPI(); assertTrue(disp.listeners.isEmpty()); eventAPI.addListener(l1, EVENT1, EVENT2, EVENT3); assertEquals(3, disp.listeners.size()); assertTrue(disp.listeners.containsEntry(EVENT1, l1)); assertTrue(eventAPI.containsListener(l1, EVENT1)); assertTrue(eventAPI.containsListener(l1, EVENT2)); assertTrue(eventAPI.containsListener(l1, EVENT3)); eventAPI.removeListener(l1); assertTrue(disp.listeners.isEmpty()); assertFalse(eventAPI.containsListener(l1, EVENT1)); assertFalse(eventAPI.containsListener(l1, EVENT2)); assertFalse(eventAPI.containsListener(l1, EVENT3)); }
api.addListener(l3, EVENT1, EVENT2, EVENT3); assertTrue(api.containsListener(l1, EVENT1)); assertFalse(api.containsListener(l1, EVENT2)); assertFalse(api.containsListener(l1, EVENT3)); assertFalse(api.containsListener(l1, OTHER_EVENT1));