public void testConcurrentRemove() { final SimplerEventBus eventBus = new SimplerEventBus(); ShyHandler h = new ShyHandler(); eventBus.addHandler(MouseDownEvent.getType(), mouse1); h.r = eventBus.addHandler(MouseDownEvent.getType(), h); eventBus.addHandler(MouseDownEvent.getType(), mouse2); eventBus.addHandler(MouseDownEvent.getType(), mouse3); fireMouseDown(eventBus); assertFired(h, mouse1, mouse2, mouse3); reset(); fireMouseDown(eventBus); assertFired(mouse1, mouse2, mouse3); assertNotFired(h); }