From 2b59635402b04cb4747ac8c351c5eb138c809d1f Mon Sep 17 00:00:00 2001 From: austinried <4966622+austinried@users.noreply.github.com> Date: Thu, 24 Sep 2026 12:40:30 +0000 Subject: [PATCH] cover jumping within a shuffled queue without reshuffling --- .../playback/PlaybackControllerTest.kt | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/app/src/test/kotlin/com/subtracks/playback/PlaybackControllerTest.kt b/app/src/test/kotlin/com/subtracks/playback/PlaybackControllerTest.kt index cb0464c2..25371cb9 100644 --- a/app/src/test/kotlin/com/subtracks/playback/PlaybackControllerTest.kt +++ b/app/src/test/kotlin/com/subtracks/playback/PlaybackControllerTest.kt @@ -770,6 +770,31 @@ class PlaybackControllerTest { assertEquals("s4", handle.items.first().id) } + @Test + fun jumpingInTheQueueWhileShuffledKeepsTheOrder() { + seedAlbum(5, sourceId = 1) + + controller.playAlbum(1, "al1", 0) + await { + controller.state.value.item + ?.id == "s1" + } + + controller.toggleShuffle() + await { controller.state.value.shuffle } + val order = handle.items.map { it.id } + + controller.playAt(2) + await { controller.state.value.position == 2L } + + assertEquals(order, handle.items.map { it.id }) + assertEquals( + order[2], + controller.state.value.item + ?.id, + ) + } + private fun seedAlbum( count: Int, sourceId: Long,