feat: M4a outbound ListenBrainz scrobble worker #26

Merged
bvandeusen merged 262 commits from dev into main 2026-04-28 18:36:59 -04:00
Showing only changes of commit 622c90a2d5 - Show all commits
@@ -1,6 +1,7 @@
package com.fabledsword.minstrel.library.ui package com.fabledsword.minstrel.library.ui
import app.cash.turbine.test import app.cash.turbine.test
import com.fabledsword.minstrel.cache.sync.SyncController
import com.fabledsword.minstrel.library.data.LibraryRepository import com.fabledsword.minstrel.library.data.LibraryRepository
import com.fabledsword.minstrel.models.AlbumRef import com.fabledsword.minstrel.models.AlbumRef
import com.fabledsword.minstrel.models.ArtistRef import com.fabledsword.minstrel.models.ArtistRef
@@ -25,7 +26,7 @@ class LibraryViewModelTest {
every { repo.observeArtists() } returns MutableSharedFlow() every { repo.observeArtists() } returns MutableSharedFlow()
every { repo.observeAlbums() } 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) assertEquals(LibraryUiState.Loading, vm.uiState.value)
} }
@@ -43,7 +44,7 @@ class LibraryViewModelTest {
every { repo.observeArtists() } returns flowOf(emptyList()) every { repo.observeArtists() } returns flowOf(emptyList())
every { repo.observeAlbums() } returns flowOf(emptyList()) every { repo.observeAlbums() } returns flowOf(emptyList())
val vm = LibraryViewModel(repo) val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
vm.uiState.test { vm.uiState.test {
assertEquals(LibraryUiState.Empty, awaitItem()) assertEquals(LibraryUiState.Empty, awaitItem())
@@ -59,7 +60,7 @@ class LibraryViewModelTest {
every { repo.observeAlbums() } returns every { repo.observeAlbums() } returns
flowOf(listOf(AlbumRef(id = "al1", title = "Geogaddi", artistId = "a1"))) flowOf(listOf(AlbumRef(id = "al1", title = "Geogaddi", artistId = "a1")))
val vm = LibraryViewModel(repo) val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
vm.uiState.test { vm.uiState.test {
val success = awaitItem() as LibraryUiState.Success val success = awaitItem() as LibraryUiState.Success
@@ -78,7 +79,7 @@ class LibraryViewModelTest {
flow { throw IllegalStateException("DAO blew up") } flow { throw IllegalStateException("DAO blew up") }
every { repo.observeAlbums() } returns flowOf(emptyList()) every { repo.observeAlbums() } returns flowOf(emptyList())
val vm = LibraryViewModel(repo) val vm = LibraryViewModel(repo, mockk<SyncController>(relaxed = true))
vm.uiState.test { vm.uiState.test {
val error = awaitItem() as LibraryUiState.Error val error = awaitItem() as LibraryUiState.Error