### Question:
ScreenStack extends Stack { public void push(Actor screen) { Action runnable = Actions.run(() -> { add(screen); getStage().setKeyboardFocus(screen); }); addAction(runnable); }  void replace(Actor screen); void push(Actor screen); void pop(int n); @Override void act(float deltaTime);  }### Answer:
@Test public void testPush() throws Exception { Actor screen = spy(new Actor()); latch = new CountDownLatch(1); app.postRunnable(() -> { actor.push(screen); latch.countDown(); }); assertThat(latch.await(5, TimeUnit.SECONDS)).isTrue(); Thread.sleep(500); verify(screen, atLeastOnce()).draw(any(), anyFloat()); verify(screen, atLeastOnce()).act(anyFloat()); }