### Question:
LevelChoiceServiceImpl implements LevelChoiceService { @Override public void moveTo(int screen) { if (screen < screenCount && screen >= 0) { currentScreen = screen; } updateAll(); } LevelChoiceServiceImpl(int levelCount, int levelPerScreen); @Override void moveRight(); @Override void moveLeft(); @Override void moveTo(int screen); @Override void attach(Observer observer); @Override int getCurrentScreen(); @Override boolean isLastScene(); @Override boolean isFirstScene();  }### Answer:
@Test public void moveTo() { assertThat(sut.getCurrentScreen(), is(0)); sut.moveTo(2); assertThat(sut.getCurrentScreen(), is(2)); sut.moveTo(3); assertThat(sut.getCurrentScreen(), is(2)); sut.moveTo(-1); assertThat(sut.getCurrentScreen(), is(2)); verify(observer, times(3)).update(); }