@Test public void givenInitialised_whenCallingOnPrepared_thenSetsOnSeekCompleteListener() { player.initialise(); ArgumentCaptor<NoPlayer.PreparedListener> preparedListenerCaptor = ArgumentCaptor.forClass(NoPlayer.PreparedListener.class); verify(listenersHolder).addPreparedListener(preparedListenerCaptor.capture()); NoPlayer.PreparedListener preparedListener = preparedListenerCaptor.getValue(); preparedListener.onPrepared(player); verify(mediaPlayer).setOnSeekCompleteListener(any(MediaPlayer.OnSeekCompleteListener.class)); }
@Test public void givenInitialised_whenCallingOnPrepared_thenCancelsTimeout() { player.initialise(); ArgumentCaptor<NoPlayer.PreparedListener> preparedListenerCaptor = ArgumentCaptor.forClass(NoPlayer.PreparedListener.class); verify(listenersHolder).addPreparedListener(preparedListenerCaptor.capture()); NoPlayer.PreparedListener preparedListener = preparedListenerCaptor.getValue(); preparedListener.onPrepared(player); verify(loadTimeout).cancel(); }
@Test public void givenPlayerIsInitialised_whenVideoIsPrepared_thenCancelsTimeout() { player.initialise(); ArgumentCaptor<NoPlayer.PreparedListener> argumentCaptor = ArgumentCaptor.forClass(NoPlayer.PreparedListener.class); verify(listenersHolder).addPreparedListener(argumentCaptor.capture()); NoPlayer.PreparedListener preparedListener = argumentCaptor.getValue(); preparedListener.onPrepared(player); verify(loadTimeout).cancel(); }
void initialise() { forwarder.bind(listenersHolder.getPreparedListeners(), this); forwarder.bind(listenersHolder.getBufferStateListeners(), listenersHolder.getErrorListeners()); forwarder.bind(listenersHolder.getCompletionListeners(), listenersHolder.getStateChangedListeners()); forwarder.bind(listenersHolder.getVideoSizeChangedListeners()); forwarder.bind(listenersHolder.getInfoListeners()); bufferHeartbeatCallback.bind(forwarder.onHeartbeatListener()); heart.bind(new Heart.Heartbeat(listenersHolder.getHeartbeatCallbacks(), this)); listenersHolder.addHeartbeatCallback(bufferHeartbeatCallback); listenersHolder.addPreparedListener(new PreparedListener() { @Override public void onPrepared(PlayerState playerState) { loadTimeout.cancel(); mediaPlayer.setOnSeekCompleteListener(seekToResettingSeekListener); } }); listenersHolder.addErrorListener(new ErrorListener() { @Override public void onError(PlayerError error) { reset(); } }); listenersHolder.addVideoSizeChangedListener(new VideoSizeChangedListener() { @Override public void onVideoSizeChanged(int width, int height, int unappliedRotationDegrees, float pixelWidthHeightRatio) { videoWidth = width; videoHeight = height; } }); }
void initialise() { heart.bind(new Heart.Heartbeat(listenersHolder.getHeartbeatCallbacks(), this)); forwarder.bind(listenersHolder.getPreparedListeners(), this); forwarder.bind(listenersHolder.getCompletionListeners(), listenersHolder.getStateChangedListeners()); forwarder.bind(listenersHolder.getErrorListeners()); forwarder.bind(listenersHolder.getBufferStateListeners()); forwarder.bind(listenersHolder.getVideoSizeChangedListeners()); forwarder.bind(listenersHolder.getBitrateChangedListeners()); forwarder.bind(listenersHolder.getInfoListeners()); forwarder.bind(listenersHolder.getDroppedVideoFramesListeners()); listenersHolder.addPreparedListener(new PreparedListener() { @Override public void onPrepared(PlayerState playerState) { loadTimeout.cancel(); } }); listenersHolder.addErrorListener(new ErrorListener() { @Override public void onError(PlayerError error) { reset(); } }); listenersHolder.addVideoSizeChangedListener(new VideoSizeChangedListener() { @Override public void onVideoSizeChanged(int width, int height, int unappliedRotationDegrees, float pixelWidthHeightRatio) { videoWidth = width; videoHeight = height; } }); }