feat: M3 weighted shuffle v1 — real /api/radio with scoring #21
+5
-4
@@ -1,6 +1,7 @@
|
||||
package com.fabledsword.minstrel.library.ui
|
||||
|
||||
import app.cash.turbine.test
|
||||
import com.fabledsword.minstrel.cache.sync.SyncController
|
||||
import com.fabledsword.minstrel.library.data.LibraryRepository
|
||||
import com.fabledsword.minstrel.models.AlbumRef
|
||||
import com.fabledsword.minstrel.models.ArtistRef
|
||||
@@ -25,7 +26,7 @@ class LibraryViewModelTest {
|
||||
every { repo.observeArtists() } returns MutableSharedFlow()
|
||||
every { repo.observeAlbums() } returns MutableSharedFlow()
|
||||
|
||||
val vm = LibraryViewModel(repo)
|
||||
val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
|
||||
|
||||
assertEquals(LibraryUiState.Loading, vm.uiState.value)
|
||||
}
|
||||
@@ -43,7 +44,7 @@ class LibraryViewModelTest {
|
||||
every { repo.observeArtists() } returns flowOf(emptyList())
|
||||
every { repo.observeAlbums() } returns flowOf(emptyList())
|
||||
|
||||
val vm = LibraryViewModel(repo)
|
||||
val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
|
||||
|
||||
vm.uiState.test {
|
||||
assertEquals(LibraryUiState.Empty, awaitItem())
|
||||
@@ -59,7 +60,7 @@ class LibraryViewModelTest {
|
||||
every { repo.observeAlbums() } returns
|
||||
flowOf(listOf(AlbumRef(id = "al1", title = "Geogaddi", artistId = "a1")))
|
||||
|
||||
val vm = LibraryViewModel(repo)
|
||||
val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
|
||||
|
||||
vm.uiState.test {
|
||||
val success = awaitItem() as LibraryUiState.Success
|
||||
@@ -78,7 +79,7 @@ class LibraryViewModelTest {
|
||||
flow { throw IllegalStateException("DAO blew up") }
|
||||
every { repo.observeAlbums() } returns flowOf(emptyList())
|
||||
|
||||
val vm = LibraryViewModel(repo)
|
||||
val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
|
||||
|
||||
vm.uiState.test {
|
||||
val error = awaitItem() as LibraryUiState.Error
|
||||
|
||||
Reference in New Issue
Block a user