@Override public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int width, int height) { this.eitherSurface = Either.left(new Surface(surfaceTexture)); notifyListeners(eitherSurface); callbacks.clear(); }
@Test public void givenEitherContainsLeft_whenApplyingConsumers_thenRunsLeftConsumerWithCorrectValue() { String value = "foo"; Either<String, Integer> either = Either.left(value); either.apply(leftConsumer, rightConsumer); verify(leftConsumer).accept(value); }
@Test public void givenSurfaceRequesterReturnsSurface_whenPreparing_thenSetsSurface() { Surface surface = mock(Surface.class); Either<Surface, SurfaceHolder> eitherSurface = Either.left(surface); givenSurfaceRequesterReturns(eitherSurface); givenMediaPlayerIsPreparedWith(eitherSurface); verify(mediaPlayer).setSurface(surface); }
@Before public void setUp() { NoPlayerLog.setLoggingEnabled(false); facade = new AndroidMediaPlayerFacade(context, forwarder, audioManager, trackSelector, playbackStateChecker, mediaPlayerCreator); given(mediaPlayerCreator.createMediaPlayer()).willReturn(mediaPlayer); given(playbackStateChecker.isInPlaybackState(eq(mediaPlayer), any(PlaybackStateChecker.PlaybackState.class))).willReturn(IS_IN_PLAYBACK_STATE); eitherSurface = Either.left(surface); givenSurfaceRequesterReturns(eitherSurface); given(forwarder.onPreparedListener()).willReturn(preparedListener); given(forwarder.onCompletionListener()).willReturn(completionListener); given(forwarder.onErrorListener()).willReturn(errorListener); given(forwarder.onSizeChangedListener()).willReturn(videoSizeChangedListener); }