@Test public void whenStartingPlay_thenNotifiesStateListenersThatVideoIsPlaying() { player.play(); verify(stateChangedListener).onVideoPlaying(); }
@Test public void whenStartingPlay_thenNotifiesStateListenersThatVideoIsPlaying() { player.play(); verify(stateChangedListener).onVideoPlaying(); }
@Test public void whenStartingPlayAtVideoPosition_thenNotifiesStateListenersThatVideoIsPlaying() { player.playAt(TWO_MINUTES_IN_MILLIS); verify(stateChangedListener).onVideoPlaying(); }
@Test public void givenPlayerIsAlreadyPlaying_whenPlaying_thenNotifiesVideoPlaying() { given(mediaPlayer.isPlaying()).willReturn(IS_NOT_PLAYING); player.play(); verify(stateChangedListener).onVideoPlaying(); }
@Test public void whenStartingPlayAtVideoPosition_thenNotifiesStateListenersThatVideoIsPlaying() { given(mediaPlayer.currentPositionInMillis()).willReturn((int) BEGINNING_POSITION); player.playAt(BEGINNING_POSITION); verify(stateChangedListener).onVideoPlaying(); }
@Test public void whenDoubleCallingOnVideoPlaying_thenEmitsOnlyFirstOnVideoPlayingEvent() { stateChangedListeners.onVideoPlaying(); stateChangedListeners.onVideoPlaying(); verify(stateChangedListener).onVideoPlaying(); }
@Override public void onVideoPlaying() { if (currentState == State.PLAYING) { NoPlayerLog.e("Tried calling onVideoPlaying() but video is already playing."); return; } for (NoPlayer.StateChangedListener listener : listeners) { listener.onVideoPlaying(); } currentState = State.PLAYING; }
@Override public void play() throws IllegalStateException { heart.startBeatingHeart(); exoPlayer.play(); listenersHolder.getStateChangedListeners().onVideoPlaying(); }
@Override public void onSurfaceReady(Either<Surface, SurfaceHolder> surface) { mediaPlayer.start(surface); listenersHolder.getStateChangedListeners().onVideoPlaying(); } });