Merge Wholphin v1.1.0 while preserving Wolfskin features #27
2 changed files with 44 additions and 0 deletions
|
|
@ -717,6 +717,7 @@ class PlaybackViewModel
|
|||
api.videosApi.getVideoStreamUrl(
|
||||
itemId = itemId,
|
||||
mediaSourceId = source.id,
|
||||
liveStreamId = source.liveStreamId,
|
||||
static = true,
|
||||
tag = source.eTag,
|
||||
playSessionId = response.playSessionId,
|
||||
|
|
|
|||
|
|
@ -292,6 +292,49 @@ class PlaybackViewModelTests {
|
|||
return viewModel
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `Direct play includes the opened live stream ID`() =
|
||||
runTest(testDispatcher) {
|
||||
setupPreferences { cinemaMode = false }
|
||||
val liveStreamId = "opened-live-stream"
|
||||
val liveSource = mediaSource.copy(liveStreamId = liveStreamId)
|
||||
coEvery { mockUserLibraryApi.getItem(movie.id) } returns successResponse(movie)
|
||||
coEvery { mockMediaInfoApi.getPostedPlaybackInfo(any(), any()) } returns
|
||||
successResponse(
|
||||
PlaybackInfoResponse(
|
||||
mediaSources = listOf(liveSource),
|
||||
playSessionId = playSessionId,
|
||||
),
|
||||
)
|
||||
every {
|
||||
mockVideosApi.getVideoStreamUrl(
|
||||
itemId = movie.id,
|
||||
mediaSourceId = liveSource.id,
|
||||
liveStreamId = liveSource.liveStreamId,
|
||||
static = true,
|
||||
tag = liveSource.eTag,
|
||||
playSessionId = playSessionId,
|
||||
)
|
||||
} returns videoStreamUrl
|
||||
|
||||
createViewModel(Destination.Playback(movie.id, 0L))
|
||||
|
||||
val mediaItem = slot<MediaItem>()
|
||||
verify(exactly = 1) { mockPlayer.setMediaItem(capture(mediaItem), any<Long>()) }
|
||||
val playbackUri = mediaItem.captured.localConfiguration?.uri
|
||||
Assert.assertEquals(videoStreamUrl, playbackUri.toString())
|
||||
verify(exactly = 1) {
|
||||
mockVideosApi.getVideoStreamUrl(
|
||||
itemId = movie.id,
|
||||
mediaSourceId = liveSource.id,
|
||||
liveStreamId = liveStreamId,
|
||||
static = true,
|
||||
tag = liveSource.eTag,
|
||||
playSessionId = playSessionId,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `Play intro first`() =
|
||||
runTest(testDispatcher) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue