From 16a152b86292024e4336775d1084b61076516bcd Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Tue, 20 Oct 2026 12:01:16 -0400 Subject: [PATCH] test: the album-copy fold test makes each album once, as UpsertAlbum folds only by MBID (#5401) Co-Authored-By: Claude Opus 5.5 --- internal/library/song_link_test.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/internal/library/song_link_test.go b/internal/library/song_link_test.go index 263afee5..ac3f630e 100644 --- a/internal/library/song_link_test.go +++ b/internal/library/song_link_test.go @@ -234,11 +234,17 @@ func TestResolveDuplicates_FoldsAnAlbumsExtraCopyInACrossReleaseGroup_Integratio if err != nil { t.Fatal(err) } + // UpsertAlbum folds only by MBID, so each album is made once. + albums := map[string]dbq.Album{} track := func(album, name, format string) dbq.Track { t.Helper() - a, err := q.UpsertAlbum(ctx, dbq.UpsertAlbumParams{Title: album, SortTitle: album, ArtistID: artist.ID}) - if err != nil { - t.Fatal(err) + a, ok := albums[album] + if !ok { + var err error + if a, err = q.UpsertAlbum(ctx, dbq.UpsertAlbumParams{Title: album, SortTitle: album, ArtistID: artist.ID}); err != nil { + t.Fatal(err) + } + albums[album] = a } path := filepath.Join(dir, album, name) if err := os.MkdirAll(filepath.Dir(path), 0o755); err != nil {