### Question:
DefaultScreenManager implements ScreenManager<IScreen> { @Override public void dispose() { for (String key : this.screens.keys()) { this.removeScreen(key); } } DefaultScreenManager(); @Override void addScreen(String name, IScreen screen); @Override void removeScreen(String name); @Override void push(String name); @Override void leaveAllAndEnter(String name); @Override IScreen pop(); @Override IScreen getScreenByName(String name); @Override ObjectArrayList<IScreen> listScreens(); @Override ObjectArrayList<IScreen> listActiveScreens(); @Override void resize(int width, int height); @Override void update(); @Override void draw(); @Override void dispose();  }### Answer:
@Test public void testDispose () { ScreenManager<IScreen> manager = this.createScreenManager(); manager.addScreen("dummy_screen", new DummyScreen()); manager.push("dummy_screen"); manager.dispose(); }