boolean isPlaying() { return playbackStateChecker.isPlaying(mediaPlayer, currentState); }
@Test public void givenMediaPlayerIsNotPlaying_whenPausing_thenDoesNotPausesMediaPlayer() { givenMediaPlayerIsPrepared(); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_NOT_PLAYING); facade.pause(); verify(mediaPlayer, never()).pause(); }
@Test public void givenMediaPlayerIsPlaying_whenPausing_thenPausesMediaPlayer() { givenMediaPlayerIsPrepared(); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.pause(); verify(mediaPlayer).pause(); }
@Test public void givenMediaPlayerIsNotInPlaybackState_whenSelectingAudioTracks_thenThrowsIllegalStateException() { thrown.expect(ExceptionMatcher.matches(ERROR_MESSAGE, IllegalStateException.class)); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.selectAudioTrack(mock(PlayerAudioTrack.class)); }
@Test public void givenMediaPlayerIsNotInPlaybackState_whenSelectingSubtitleTrack_thenThrowsIllegalStateException() { thrown.expect(ExceptionMatcher.matches(ERROR_MESSAGE, IllegalStateException.class)); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.selectSubtitleTrack(mock(PlayerSubtitleTrack.class)); }
@Test public void givenMediaPlayerIsNotInPlaybackState_whenGettingAudioTracks_thenThrowsIllegalStateException() { thrown.expect(ExceptionMatcher.matches(ERROR_MESSAGE, IllegalStateException.class)); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.getAudioTracks(); }
@Test public void givenMediaPlayerIsNotInPlaybackState_whenGettingVideoTracks_thenThrowsIllegalStateException() { thrown.expect(ExceptionMatcher.matches(ERROR_MESSAGE, IllegalStateException.class)); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.getVideoTracks(); }
@Test public void givenMediaPlayerIsNotInPlaybackState_whenGettingSelectedVideoTrack_thenThrowsIllegalStateException() { thrown.expect(ExceptionMatcher.matches(ERROR_MESSAGE, IllegalStateException.class)); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); facade.getSelectedVideoTrack(); }
@Test public void whenCheckingIsPlaying_thenDelegatesToPlaystateChecker() { givenMediaPlayerIsPrepared(); given(playbackStateChecker.isPlaying(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))) .willReturn(IS_PLAYING); boolean playing = facade.isPlaying(); assertThat(playing).isTrue(); }