Class ExoPlayerTestRunner.Builder
- java.lang.Object
-
- com.google.android.exoplayer2.testutil.ExoPlayerTestRunner.Builder
-
- Enclosing class:
- ExoPlayerTestRunner
public static final class ExoPlayerTestRunner.Builder extends Object
Builder to set-up anExoPlayerTestRunner. Default fake implementations will be used for unset test properties.
-
-
Method Summary
-
-
-
Constructor Detail
-
Builder
public Builder(Context context)
-
-
Method Detail
-
setTimeline
public ExoPlayerTestRunner.Builder setTimeline(Timeline timeline)
Sets aTimelineto be used by aFakeMediaSourcein the test runner. The default value is a seekable, non-dynamicFakeTimelinewith a duration ofFakeTimeline.TimelineWindowDefinition.DEFAULT_WINDOW_DURATION_US. Setting the timeline is not allowed after a call tosetMediaSources(MediaSource...)orskipSettingMediaSources().- Parameters:
timeline- ATimelineto be used by aFakeMediaSourcein the test runner.- Returns:
- This builder.
-
setManifest
public ExoPlayerTestRunner.Builder setManifest(Object manifest)
Sets a manifest to be used by aFakeMediaSourcein the test runner. The default value is null. Setting the manifest is not allowed after a call tosetMediaSources(MediaSource...)orskipSettingMediaSources().- Parameters:
manifest- A manifest to be used by aFakeMediaSourcein the test runner.- Returns:
- This builder.
-
initialSeek
public ExoPlayerTestRunner.Builder initialSeek(int mediaItemIndex, long positionMs)
Seeks before setting the media sources and preparing the player.- Parameters:
mediaItemIndex- The media item index to seek to.positionMs- The position in milliseconds to seek to.- Returns:
- This builder.
-
setMediaSources
public ExoPlayerTestRunner.Builder setMediaSources(MediaSource... mediaSources)
Sets theMediaSources to be used by the test runner. The default value is aFakeMediaSourcewith the timeline and manifest provided bysetTimeline(Timeline)andsetManifest(Object). Setting media sources is not allowed after calls toskipSettingMediaSources(),setTimeline(Timeline)and/orsetManifest(Object).- Parameters:
mediaSources- TheMediaSources to be used by the test runner.- Returns:
- This builder.
-
setSupportedFormats
public ExoPlayerTestRunner.Builder setSupportedFormats(Format... supportedFormats)
Sets a list ofFormats to be used by aFakeMediaSourceto create media periods. The default value is a singleExoPlayerTestRunner.VIDEO_FORMAT. Note that this parameter doesn't have any influence if a media source withsetMediaSources(MediaSource...)is set.- Parameters:
supportedFormats- A list of supportedFormats.- Returns:
- This builder.
-
skipSettingMediaSources
public ExoPlayerTestRunner.Builder skipSettingMediaSources()
Skips callingExoPlayer.setMediaSources(List)before preparing. Calling this method is not allowed after calls tosetMediaSources(MediaSource...),setTimeline(Timeline)and/orsetManifest(Object).- Returns:
- This builder.
-
setUseLazyPreparation
public ExoPlayerTestRunner.Builder setUseLazyPreparation(boolean useLazyPreparation)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setUseLazyPreparation(boolean)
-
setPauseAtEndOfMediaItems
public ExoPlayerTestRunner.Builder setPauseAtEndOfMediaItems(boolean pauseAtEndOfMediaItems)
Sets whether to enable pausing at the end of media items.- Parameters:
pauseAtEndOfMediaItems- Whether to pause at the end of media items.- Returns:
- This builder.
-
setTrackSelector
public ExoPlayerTestRunner.Builder setTrackSelector(DefaultTrackSelector trackSelector)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setTrackSelector(DefaultTrackSelector)
-
setLoadControl
public ExoPlayerTestRunner.Builder setLoadControl(LoadControl loadControl)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setLoadControl(LoadControl)
-
setBandwidthMeter
public ExoPlayerTestRunner.Builder setBandwidthMeter(BandwidthMeter bandwidthMeter)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setBandwidthMeter(BandwidthMeter)
-
setRenderers
public ExoPlayerTestRunner.Builder setRenderers(Renderer... renderers)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setRenderers(Renderer...)
-
setRenderersFactory
public ExoPlayerTestRunner.Builder setRenderersFactory(RenderersFactory renderersFactory)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setRenderersFactory(RenderersFactory)
-
setClock
public ExoPlayerTestRunner.Builder setClock(Clock clock)
- Returns:
- This builder.
- See Also:
TestExoPlayerBuilder.setClock(Clock)
-
setActionSchedule
public ExoPlayerTestRunner.Builder setActionSchedule(ActionSchedule actionSchedule)
Sets anActionScheduleto be run by the test runner. The first action will be executed immediately beforePlayer.prepare().- Parameters:
actionSchedule- AnActionScheduleto be used by the test runner.- Returns:
- This builder.
-
setVideoSurface
public ExoPlayerTestRunner.Builder setVideoSurface(Surface surface)
Sets the videoSurface. The default value isnull.- Parameters:
surface- TheSurfaceto be used by the player.- Returns:
- This builder.
-
setPlayerListener
public ExoPlayerTestRunner.Builder setPlayerListener(Player.Listener playerListener)
Sets anPlayer.Listenerto be registered to listen to player events.- Parameters:
playerListener- APlayer.Listenerto be registered by the test runner to listen to player events.- Returns:
- This builder.
-
setAnalyticsListener
public ExoPlayerTestRunner.Builder setAnalyticsListener(AnalyticsListener analyticsListener)
Sets anAnalyticsListenerto be registered.- Parameters:
analyticsListener- AnAnalyticsListenerto be registered.- Returns:
- This builder.
-
setExpectedPlayerEndedCount
public ExoPlayerTestRunner.Builder setExpectedPlayerEndedCount(int expectedPlayerEndedCount)
Sets the number of times the test runner is expected to reach thePlayer.STATE_ENDEDorPlayer.STATE_IDLE. The default is 1. This affects how longExoPlayerTestRunner.blockUntilEnded(long)waits.- Parameters:
expectedPlayerEndedCount- The number of times the player is expected to reach the ended or idle state.- Returns:
- This builder.
-
build
public ExoPlayerTestRunner build()
Builds anExoPlayerTestRunnerusing the provided values or their defaults.- Returns:
- The built
ExoPlayerTestRunner.
-
-