Live Activities, nudging, unit tests

This commit is contained in:
2026-04-20 11:11:24 +02:00
parent 3858500a45
commit 7e25a4f978
15 changed files with 348 additions and 20 deletions
@@ -82,9 +82,9 @@ struct FavoriteURICollectionTests {
@Test("Collects URIs of items marked as favorite")
func collectsFavoriteURIs() throws {
let items: [MAMediaItem] = try [
"""{"uri":"spotify://1","name":"A","favorite":true}""",
"""{"uri":"spotify://2","name":"B","favorite":false}""",
"""{"uri":"spotify://3","name":"C","favorite":true}""",
#"{"uri":"spotify://1","name":"A","favorite":true}"#,
#"{"uri":"spotify://2","name":"B","favorite":false}"#,
#"{"uri":"spotify://3","name":"C","favorite":true}"#,
].map {
try JSONDecoder().decode(MAMediaItem.self, from: Data($0.utf8))
}
@@ -96,8 +96,8 @@ struct FavoriteURICollectionTests {
@Test("Returns empty set when no items are favorite")
func emptyWhenNoFavorites() throws {
let items: [MAMediaItem] = try [
"""{"uri":"x://1","name":"A","favorite":false}""",
"""{"uri":"x://2","name":"B"}""",
#"{"uri":"x://1","name":"A","favorite":false}"#,
#"{"uri":"x://2","name":"B"}"#,
].map {
try JSONDecoder().decode(MAMediaItem.self, from: Data($0.utf8))
}
@@ -108,7 +108,7 @@ struct FavoriteURICollectionTests {
@Test("isFavorite check on MALibraryManager respects favoriteURIs set")
func isFavoriteCheck() {
let manager = MALibraryManager()
let manager = MALibraryManager(service: nil)
// Initially no favorites
#expect(manager.isFavorite(uri: "spotify://track/1") == false)
}
@@ -121,22 +121,22 @@ struct LibraryManagerInitialStateTests {
@Test("Artists collection starts empty")
func artistsStartEmpty() {
#expect(MALibraryManager().artists.isEmpty)
#expect(MALibraryManager(service: nil).artists.isEmpty)
}
@Test("Albums collection starts empty")
func albumsStartEmpty() {
#expect(MALibraryManager().albums.isEmpty)
#expect(MALibraryManager(service: nil).albums.isEmpty)
}
@Test("Playlists collection starts empty")
func playlistsStartEmpty() {
#expect(MALibraryManager().playlists.isEmpty)
#expect(MALibraryManager(service: nil).playlists.isEmpty)
}
@Test("Loading flags start as false")
func loadingFlagsStartFalse() {
let m = MALibraryManager()
let m = MALibraryManager(service: nil)
#expect(m.isLoadingArtists == false)
#expect(m.isLoadingAlbums == false)
#expect(m.isLoadingPlaylists == false)
@@ -144,6 +144,6 @@ struct LibraryManagerInitialStateTests {
@Test("favoriteURIs starts empty")
func favoriteURIsStartEmpty() {
#expect(MALibraryManager().favoriteURIs.isEmpty)
#expect(MALibraryManager(service: nil).favoriteURIs.isEmpty)
}
}