### Question:
EventSystem extends BaseSystem { public void dispatch( Event event ) { dispatcherStrategy.dispatch(event); } EventSystem();  EventSystem(EventDispatchStrategy dispatcherStrategy, ListenerFinderStrategy listenerFinderStrategy); void registerEvents( Object o ); void dispatch( Event event ); T dispatch( Class<T> eventType );  }### Answer:
@Test public void Initialization_ManagerListeners_AllListenersAutoRegistered() { SimpleManager m1 = new SimpleManager(); SimpleManager2 m2 = new SimpleManager2(); config.setSystem(m1); config.setSystem(m2); final World w = new World(config); w.getSystem(EventSystem.class).dispatch(new SimpleEvent()); assertEquals(1, m1.count); assertEquals(1, m2.count); }
@Test public void Initialization_SystemListeners_AllListenersAutoRegistered() { SimpleEntitySystem es1 = new SimpleEntitySystem(); SimpleEntitySystem2 es2 = new SimpleEntitySystem2(); config.setSystem(es1); config.setSystem(es2); final World w = new World(config); w.getSystem(EventSystem.class).dispatch(new SimpleEvent()); assertEquals(1, es1.count); assertEquals(1, es2.count); }