Mockito.verify(seekListener).onSeekComplete(mediaPlayer);
/** * Restore the last State before seekTo() * * @param mp the MediaPlayer that issued the seek operation */ @Override public void onSeekComplete(MediaPlayer mp) { Log.d(TAG, "onSeekComplete"); stopLoading(); if (lastState != null) { switch (lastState) { case STARTED: { start(); break; } case PLAYBACKCOMPLETED: { currentState = State.PLAYBACKCOMPLETED; break; } case PREPARED: { currentState = State.PREPARED; break; } } } if (this.seekCompleteListener != null) this.seekCompleteListener.onSeekComplete(mp); }
/** * Allows test cases to simulate seek completion by invoking callback. */ public void invokeSeekCompleteListener() { int duration = getMediaInfo().duration; setCurrentPosition(pendingSeek > duration ? duration : pendingSeek < 0 ? 0 : pendingSeek); pendingSeek = -1; if (state == STARTED) { doStart(); } if (seekCompleteListener == null) { return; } seekCompleteListener.onSeekComplete(player); }
/** * Allows test cases to simulate seek completion by invoking callback. */ public void invokeSeekCompleteListener() { int duration = getMediaInfo().duration; setCurrentPosition(pendingSeek > duration ? duration : pendingSeek < 0 ? 0 : pendingSeek); pendingSeek = -1; if (state == STARTED) { doStart(); } if (seekCompleteListener == null) { return; } seekCompleteListener.onSeekComplete(player); }
/** * Allows test cases to simulate seek completion by invoking callback. */ public void invokeSeekCompleteListener() { int duration = getMediaInfo().duration; setCurrentPosition(pendingSeek > duration ? duration : pendingSeek < 0 ? 0 : pendingSeek); pendingSeek = -1; if (state == STARTED) { doStart(); } if (seekCompleteListener == null) { return; } seekCompleteListener.onSeekComplete(player); }
/** * Allows test cases to simulate seek completion by invoking callback. */ public void invokeSeekCompleteListener() { int duration = getMediaInfo().duration; setCurrentPosition(pendingSeek > duration ? duration : pendingSeek < 0 ? 0 : pendingSeek); pendingSeek = -1; if (state == STARTED) { doStart(); } if (seekCompleteListener == null) { return; } seekCompleteListener.onSeekComplete(player); }
@Override public void onSeekComplete(MediaPlayer mp) { if (mOnSeekCompleteListener != null) mOnSeekCompleteListener.onSeekComplete(mp); } };
@Override public void onSeekComplete(MediaPlayer mp) { if (mOnSeekCompleteListener != null) mOnSeekCompleteListener.onSeekComplete(mp); } };
@Override public void onSeekComplete(MediaPlayer mp) { if (mOnSeekCompleteListener != null) mOnSeekCompleteListener.onSeekComplete(mp); } };
@Override public void onSeekComplete(MediaPlayer mp) { if (onSeekCompleteListener != null) { onSeekCompleteListener.onSeekComplete(mp); } }
@Test public void testSeekDuringPlaybackDelayedCallback() { shadowMediaPlayer.setState(PREPARED); shadowMediaPlayer.setSeekDelay(100); assertThat(shadowMediaPlayer.getSeekDelay()).isEqualTo(100); mediaPlayer.start(); scheduler.advanceBy(200); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(200); mediaPlayer.seekTo(450); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(200); scheduler.advanceBy(99); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(200); Mockito.verifyZeroInteractions(seekListener); scheduler.advanceBy(1); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(450); Mockito.verify(seekListener).onSeekComplete(mediaPlayer); assertThat(scheduler.advanceToLastPostedRunnable()).isTrue(); Mockito.verifyNoMoreInteractions(seekListener); }
@Test public void testSeekWhilePausedDelayedCallback() { shadowMediaPlayer.setState(PAUSED); shadowMediaPlayer.setSeekDelay(100); scheduler.advanceBy(200); mediaPlayer.seekTo(450); scheduler.advanceBy(99); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(0); Mockito.verifyZeroInteractions(seekListener); scheduler.advanceBy(1); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(450); Mockito.verify(seekListener).onSeekComplete(mediaPlayer); // Check that no completion callback or alternative // seek callbacks have been scheduled. assertThat(scheduler.advanceToLastPostedRunnable()).isFalse(); }
/** * Allows test cases to simulate seek completion by invoking callback. */ public void invokeSeekCompleteListener() { int duration = getMediaInfo().duration; setCurrentPosition(pendingSeek > duration ? duration : pendingSeek < 0 ? 0 : pendingSeek); pendingSeek = -1; if (state == STARTED) { doStart(); } if (seekCompleteListener == null) { return; } seekCompleteListener.onSeekComplete(player); }
@Test public void testSeekWhileSeekingWhilePaused() { shadowMediaPlayer.setState(PAUSED); shadowMediaPlayer.setSeekDelay(100); scheduler.advanceBy(200); mediaPlayer.seekTo(450); scheduler.advanceBy(50); mediaPlayer.seekTo(600); scheduler.advanceBy(99); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(0); Mockito.verifyZeroInteractions(seekListener); scheduler.advanceBy(1); assertThat(mediaPlayer.getCurrentPosition()).isEqualTo(600); Mockito.verify(seekListener).onSeekComplete(mediaPlayer); // Check that no completion callback or alternative // seek callbacks have been scheduled. assertThat(scheduler.advanceToLastPostedRunnable()).isFalse(); }
@Test public void testSeekListener() { shadowMediaPlayer.invokeSeekCompleteListener(); Mockito.verify(seekListener).onSeekComplete(mediaPlayer); }