Skip to content

Commit

Permalink
Treat non-positive duration as unknown (#728)
Browse files Browse the repository at this point in the history
  • Loading branch information
fstanis authored Nov 9, 2022
1 parent 2528ad0 commit 9258c1d
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public object MediaPositionMapper {
public fun map(player: Player?): MediaPosition? {
return if (player == null || player.currentMediaItem == null) {
null
} else if (player.duration == C.TIME_UNSET) {
} else if (player.duration == C.TIME_UNSET || player.duration <= 0L) {
MediaPosition.UnknownDuration(player.currentPosition.milliseconds)
} else {
MediaPosition.create(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class MediaPositionMapperTest {
}

@Test
fun `check position calculations unknown duration`() {
fun `check position calculation unset results in unknown duration`() {
fakeStatePlayer.overridePosition(
currentPosition = 10L,
duration = C.TIME_UNSET
Expand All @@ -46,6 +46,17 @@ class MediaPositionMapperTest {
assertThat(position.current).isEqualTo(10.milliseconds)
}

@Test
fun `check position calculation invalid results in unknown duration`() {
fakeStatePlayer.overridePosition(
currentPosition = 10L,
duration = -500L
)
val position =
MediaPositionMapper.map(fakeStatePlayer) as MediaPosition.UnknownDuration
assertThat(position.current).isEqualTo(10.milliseconds)
}

@Test
fun `check position calculations past end`() {
fakeStatePlayer.overridePosition(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public sealed class MediaPosition(
"Duration has to be greater than zero [current: $current] [duration: $duration]."
}
check(current <= duration) {
"Current position has to be greater than duration [current: $current] [duration: $duration]."
"Duration can't be less than current position [current: $current] [duration: $duration]."
}

val percent =
Expand Down

0 comments on commit 9258c1d

Please sign in to comment.