From 0718aabbacd52b7737dea606238ba64f65f2c2c6 Mon Sep 17 00:00:00 2001 From: sentriz Date: Wed, 8 Nov 2023 22:12:43 +0000 Subject: [PATCH] feat(subsonic): expose track/album displayArtist/displayAlbumArtist closes #406 --- server/ctrlsubsonic/spec/construct_by_tags.go | 26 +-- server/ctrlsubsonic/spec/spec.go | 81 +++++---- .../testdata/test_get_album_list_alpha_artist | 36 ++-- .../testdata/test_get_album_list_alpha_name | 36 ++-- .../testdata/test_get_album_list_newest | 36 ++-- .../testdata/test_get_album_list_random | 170 +++++++++--------- .../test_get_album_list_two_alpha_artist | 45 +++-- .../test_get_album_list_two_alpha_name | 45 +++-- .../testdata/test_get_album_list_two_newest | 45 +++-- .../testdata/test_get_album_list_two_random | 141 ++++++++------- .../testdata/test_get_album_with_cover | 14 +- .../testdata/test_get_artist_id_one | 15 +- .../testdata/test_get_artist_id_three | 15 +- .../testdata/test_get_artist_id_two | 15 +- .../testdata/test_search_three_q_alb | 45 +++-- .../testdata/test_search_three_q_tra | 60 +++++++ 16 files changed, 485 insertions(+), 340 deletions(-) diff --git a/server/ctrlsubsonic/spec/construct_by_tags.go b/server/ctrlsubsonic/spec/construct_by_tags.go index 5a4027a..afcd18b 100644 --- a/server/ctrlsubsonic/spec/construct_by_tags.go +++ b/server/ctrlsubsonic/spec/construct_by_tags.go @@ -17,6 +17,7 @@ func NewAlbumByTags(a *db.Album, artists []*db.Artist) *Album { Year: a.TagYear, TrackCount: a.ChildCount, Duration: a.Duration, + DisplayArtist: a.TagAlbumArtist, AverageRating: formatRating(a.AverageRating), } if a.Cover != "" { @@ -52,16 +53,18 @@ func NewAlbumByTags(a *db.Album, artists []*db.Artist) *Album { func NewTrackByTags(t *db.Track, album *db.Album) *TrackChild { ret := &TrackChild{ - ID: t.SID(), - ContentType: t.MIME(), - Suffix: formatExt(t.Ext()), - ParentID: t.AlbumSID(), - CreatedAt: t.CreatedAt, - Size: t.Size, - Title: t.TagTitle, - Artist: t.TagTrackArtist, - TrackNumber: t.TagTrackNumber, - DiscNumber: t.TagDiscNumber, + ID: t.SID(), + ContentType: t.MIME(), + Suffix: formatExt(t.Ext()), + ParentID: t.AlbumSID(), + CreatedAt: t.CreatedAt, + Size: t.Size, + Title: t.TagTitle, + Artist: t.TagTrackArtist, + DisplayArtist: t.TagTrackArtist, + AlbumDisplayArtist: album.TagAlbumArtist, + TrackNumber: t.TagTrackNumber, + DiscNumber: t.TagDiscNumber, Path: filepath.Join( album.LeftPath, album.RightPath, @@ -99,6 +102,9 @@ func NewTrackByTags(t *db.Track, album *db.Album) *TrackChild { for _, a := range t.Artists { ret.Artists = append(ret.Artists, &ArtistRef{ID: a.SID(), Name: a.Name}) } + for _, a := range album.Artists { + ret.AlbumArtists = append(ret.AlbumArtists, &ArtistRef{ID: a.SID(), Name: a.Name}) + } return ret } diff --git a/server/ctrlsubsonic/spec/spec.go b/server/ctrlsubsonic/spec/spec.go index adec86d..9ed8677 100644 --- a/server/ctrlsubsonic/spec/spec.go +++ b/server/ctrlsubsonic/spec/spec.go @@ -120,20 +120,25 @@ type GenreRef struct { Name string `xml:"name,attr" json:"name"` } +// https://opensubsonic.netlify.app/docs/responses/albumid3/ type Album struct { - // common - ID *specid.ID `xml:"id,attr,omitempty" json:"id"` - CoverID *specid.ID `xml:"coverArt,attr,omitempty" json:"coverArt,omitempty"` - ArtistID *specid.ID `xml:"artistId,attr,omitempty" json:"artistId,omitempty"` - Artist string `xml:"artist,attr,omitempty" json:"artist,omitempty"` - Artists []*ArtistRef `xml:"artists,omitempty" json:"artists,omitempty"` - Created time.Time `xml:"created,attr,omitempty" json:"created,omitempty"` - // browsing by folder (eg. getAlbumList) + ID *specid.ID `xml:"id,attr,omitempty" json:"id"` + Created time.Time `xml:"created,attr,omitempty" json:"created,omitempty"` + + // legacy or single tag mode + ArtistID *specid.ID `xml:"artistId,attr,omitempty" json:"artistId,omitempty"` + Artist string `xml:"artist,attr,omitempty" json:"artist,omitempty"` + + Artists []*ArtistRef `xml:"artists,omitempty" json:"artists,omitempty"` + DisplayArtist string `xml:"diplayArtist,attr,omitempty" json:"displayArtist,omitempty"` + + // folder stuff Title string `xml:"title,attr,omitempty" json:"title"` Album string `xml:"album,attr,omitempty" json:"album"` ParentID *specid.ID `xml:"parent,attr,omitempty" json:"parent,omitempty"` IsDir bool `xml:"isDir,attr,omitempty" json:"isDir,omitempty"` - // browsing by tags (eg. getAlbumList2) + CoverID *specid.ID `xml:"coverArt,attr,omitempty" json:"coverArt,omitempty"` + Name string `xml:"name,attr" json:"name"` TrackCount int `xml:"songCount,attr" json:"songCount"` Duration int `xml:"duration,attr" json:"duration"` @@ -141,6 +146,7 @@ type Album struct { Genres []*GenreRef `xml:"genres,omitempty" json:"genres,omitempty"` Year int `xml:"year,attr,omitempty" json:"year,omitempty"` Tracks []*TrackChild `xml:"song,omitempty" json:"song,omitempty"` + // star / rating Starred *time.Time `xml:"starred,attr,omitempty" json:"starred,omitempty"` UserRating int `xml:"userRating,attr,omitempty" json:"userRating,omitempty"` @@ -160,31 +166,40 @@ type TranscodeMeta struct { TranscodedSuffix string `xml:"transcodedSuffix,attr,omitempty" json:"transcodedSuffix,omitempty"` } +// https://opensubsonic.netlify.app/docs/responses/child/ type TrackChild struct { - ID *specid.ID `xml:"id,attr,omitempty" json:"id,omitempty"` - Album string `xml:"album,attr,omitempty" json:"album,omitempty"` - AlbumID *specid.ID `xml:"albumId,attr,omitempty" json:"albumId,omitempty"` - Artist string `xml:"artist,attr,omitempty" json:"artist,omitempty"` - ArtistID *specid.ID `xml:"artistId,attr,omitempty" json:"artistId,omitempty"` - Artists []*ArtistRef `xml:"artists,omitempty" json:"artists,omitempty"` - Bitrate int `xml:"bitRate,attr,omitempty" json:"bitRate,omitempty"` - ContentType string `xml:"contentType,attr,omitempty" json:"contentType,omitempty"` - CoverID *specid.ID `xml:"coverArt,attr,omitempty" json:"coverArt,omitempty"` - CreatedAt time.Time `xml:"created,attr,omitempty" json:"created,omitempty"` - Duration int `xml:"duration,attr,omitempty" json:"duration,omitempty"` - Genre string `xml:"genre,attr,omitempty" json:"genre,omitempty"` - Genres []*GenreRef `xml:"genres,omitempty" json:"genres,omitempty"` - IsDir bool `xml:"isDir,attr" json:"isDir"` - IsVideo bool `xml:"isVideo,attr" json:"isVideo"` - ParentID *specid.ID `xml:"parent,attr,omitempty" json:"parent,omitempty"` - Path string `xml:"path,attr,omitempty" json:"path,omitempty"` - Size int `xml:"size,attr,omitempty" json:"size,omitempty"` - Suffix string `xml:"suffix,attr,omitempty" json:"suffix,omitempty"` - Title string `xml:"title,attr" json:"title"` - TrackNumber int `xml:"track,attr,omitempty" json:"track,omitempty"` - DiscNumber int `xml:"discNumber,attr,omitempty" json:"discNumber,omitempty"` - Type string `xml:"type,attr,omitempty" json:"type,omitempty"` - Year int `xml:"year,attr,omitempty" json:"year,omitempty"` + ID *specid.ID `xml:"id,attr,omitempty" json:"id,omitempty"` + Album string `xml:"album,attr,omitempty" json:"album,omitempty"` + AlbumID *specid.ID `xml:"albumId,attr,omitempty" json:"albumId,omitempty"` + + // legacy or single tag mode + Artist string `xml:"artist,attr,omitempty" json:"artist,omitempty"` + ArtistID *specid.ID `xml:"artistId,attr,omitempty" json:"artistId,omitempty"` + + Artists []*ArtistRef `xml:"artists,omitempty" json:"artists,omitempty"` + DisplayArtist string `xml:"diplayArtist,attr,omitempty" json:"displayArtist,omitempty"` + + AlbumArtists []*ArtistRef `xml:"albumArtists,omitempty" json:"albumArtists,omitempty"` + AlbumDisplayArtist string `xml:"diplayAlbumArtist,attr,omitempty" json:"displayAlbumArtist,omitempty"` + + Bitrate int `xml:"bitRate,attr,omitempty" json:"bitRate,omitempty"` + ContentType string `xml:"contentType,attr,omitempty" json:"contentType,omitempty"` + CoverID *specid.ID `xml:"coverArt,attr,omitempty" json:"coverArt,omitempty"` + CreatedAt time.Time `xml:"created,attr,omitempty" json:"created,omitempty"` + Duration int `xml:"duration,attr,omitempty" json:"duration,omitempty"` + Genre string `xml:"genre,attr,omitempty" json:"genre,omitempty"` + Genres []*GenreRef `xml:"genres,omitempty" json:"genres,omitempty"` + IsDir bool `xml:"isDir,attr" json:"isDir"` + IsVideo bool `xml:"isVideo,attr" json:"isVideo"` + ParentID *specid.ID `xml:"parent,attr,omitempty" json:"parent,omitempty"` + Path string `xml:"path,attr,omitempty" json:"path,omitempty"` + Size int `xml:"size,attr,omitempty" json:"size,omitempty"` + Suffix string `xml:"suffix,attr,omitempty" json:"suffix,omitempty"` + Title string `xml:"title,attr" json:"title"` + TrackNumber int `xml:"track,attr,omitempty" json:"track,omitempty"` + DiscNumber int `xml:"discNumber,attr,omitempty" json:"discNumber,omitempty"` + Type string `xml:"type,attr,omitempty" json:"type,omitempty"` + Year int `xml:"year,attr,omitempty" json:"year,omitempty"` // star / rating Starred *time.Time `xml:"starred,attr,omitempty" json:"starred,omitempty"` UserRating int `xml:"userRating,attr,omitempty" json:"userRating,omitempty"` diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_alpha_artist b/server/ctrlsubsonic/testdata/test_get_album_list_alpha_artist index 93a53dc..ac0fcaa 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_alpha_artist +++ b/server/ctrlsubsonic/testdata/test_get_album_list_alpha_artist @@ -9,117 +9,117 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-0", "album": "album-0", "parent": "al-2", "isDir": true, + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-4", - "coverArt": "al-4", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-1", "album": "album-1", "parent": "al-2", "isDir": true, + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-5", - "coverArt": "al-5", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-2", "album": "album-2", "parent": "al-2", "isDir": true, + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-7", - "coverArt": "al-7", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-0", "album": "album-0", "parent": "al-6", "isDir": true, + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-8", - "coverArt": "al-8", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-1", "album": "album-1", "parent": "al-6", "isDir": true, + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-9", - "coverArt": "al-9", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-2", "album": "album-2", "parent": "al-6", "isDir": true, + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-11", - "coverArt": "al-11", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-0", "album": "album-0", "parent": "al-10", "isDir": true, + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-12", - "coverArt": "al-12", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-1", "album": "album-1", "parent": "al-10", "isDir": true, + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-13", - "coverArt": "al-13", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-2", "album": "album-2", "parent": "al-10", "isDir": true, + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300 diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_alpha_name b/server/ctrlsubsonic/testdata/test_get_album_list_alpha_name index f625f48..42040ae 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_alpha_name +++ b/server/ctrlsubsonic/testdata/test_get_album_list_alpha_name @@ -9,117 +9,117 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-0", "album": "album-0", "parent": "al-2", "isDir": true, + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-7", - "coverArt": "al-7", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-0", "album": "album-0", "parent": "al-6", "isDir": true, + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-11", - "coverArt": "al-11", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-0", "album": "album-0", "parent": "al-10", "isDir": true, + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-4", - "coverArt": "al-4", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-1", "album": "album-1", "parent": "al-2", "isDir": true, + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-8", - "coverArt": "al-8", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-1", "album": "album-1", "parent": "al-6", "isDir": true, + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-12", - "coverArt": "al-12", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-1", "album": "album-1", "parent": "al-10", "isDir": true, + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-5", - "coverArt": "al-5", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-2", "album": "album-2", "parent": "al-2", "isDir": true, + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-9", - "coverArt": "al-9", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-2", "album": "album-2", "parent": "al-6", "isDir": true, + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-13", - "coverArt": "al-13", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-2", "album": "album-2", "parent": "al-10", "isDir": true, + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300 diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_newest b/server/ctrlsubsonic/testdata/test_get_album_list_newest index 93a53dc..ac0fcaa 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_newest +++ b/server/ctrlsubsonic/testdata/test_get_album_list_newest @@ -9,117 +9,117 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-0", "album": "album-0", "parent": "al-2", "isDir": true, + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-4", - "coverArt": "al-4", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-1", "album": "album-1", "parent": "al-2", "isDir": true, + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-5", - "coverArt": "al-5", - "artist": "artist-0", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-2", "album": "album-2", "parent": "al-2", "isDir": true, + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-7", - "coverArt": "al-7", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-0", "album": "album-0", "parent": "al-6", "isDir": true, + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-8", - "coverArt": "al-8", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-1", "album": "album-1", "parent": "al-6", "isDir": true, + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-9", - "coverArt": "al-9", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-2", "album": "album-2", "parent": "al-6", "isDir": true, + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300 }, { "id": "al-11", - "coverArt": "al-11", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-0", "album": "album-0", "parent": "al-10", "isDir": true, + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300 }, { "id": "al-12", - "coverArt": "al-12", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-1", "album": "album-1", "parent": "al-10", "isDir": true, + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-13", - "coverArt": "al-13", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-2", "album": "album-2", "parent": "al-10", "isDir": true, + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300 diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_random b/server/ctrlsubsonic/testdata/test_get_album_list_random index d99f409..4595ab2 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_random +++ b/server/ctrlsubsonic/testdata/test_get_album_list_random @@ -8,121 +8,121 @@ "albumList": { "album": [ { - "id": "al-13", - "coverArt": "al-13", - "artist": "artist-2", - "created": "2019-11-30T00:00:00Z", - "title": "album-2", - "album": "album-2", - "parent": "al-10", - "isDir": true, - "name": "album-2", - "songCount": 3, - "duration": 300 - }, - { - "id": "al-8", - "coverArt": "al-8", - "artist": "artist-1", + "id": "al-4", "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", "title": "album-1", "album": "album-1", - "parent": "al-6", - "isDir": true, - "name": "album-1", - "songCount": 3, - "duration": 300 - }, - { - "id": "al-9", - "coverArt": "al-9", - "artist": "artist-1", - "created": "2019-11-30T00:00:00Z", - "title": "album-2", - "album": "album-2", - "parent": "al-6", - "isDir": true, - "name": "album-2", - "songCount": 3, - "duration": 300 - }, - { - "id": "al-3", - "coverArt": "al-3", - "artist": "artist-0", - "created": "2019-11-30T00:00:00Z", - "title": "album-0", - "album": "album-0", "parent": "al-2", "isDir": true, - "name": "album-0", - "songCount": 3, - "duration": 300 - }, - { - "id": "al-12", - "coverArt": "al-12", - "artist": "artist-2", - "created": "2019-11-30T00:00:00Z", - "title": "album-1", - "album": "album-1", - "parent": "al-10", - "isDir": true, + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300 }, { "id": "al-11", - "coverArt": "al-11", - "artist": "artist-2", "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", "title": "album-0", "album": "album-0", "parent": "al-10", "isDir": true, + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300 }, - { - "id": "al-4", - "coverArt": "al-4", - "artist": "artist-0", - "created": "2019-11-30T00:00:00Z", - "title": "album-1", - "album": "album-1", - "parent": "al-2", - "isDir": true, - "name": "album-1", - "songCount": 3, - "duration": 300 - }, - { - "id": "al-5", - "coverArt": "al-5", - "artist": "artist-0", - "created": "2019-11-30T00:00:00Z", - "title": "album-2", - "album": "album-2", - "parent": "al-2", - "isDir": true, - "name": "album-2", - "songCount": 3, - "duration": 300 - }, { "id": "al-7", - "coverArt": "al-7", - "artist": "artist-1", "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", "title": "album-0", "album": "album-0", "parent": "al-6", "isDir": true, + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300 + }, + { + "id": "al-8", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", + "title": "album-1", + "album": "album-1", + "parent": "al-6", + "isDir": true, + "coverArt": "al-8", + "name": "album-1", + "songCount": 3, + "duration": 300 + }, + { + "id": "al-9", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-1", + "title": "album-2", + "album": "album-2", + "parent": "al-6", + "isDir": true, + "coverArt": "al-9", + "name": "album-2", + "songCount": 3, + "duration": 300 + }, + { + "id": "al-13", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", + "title": "album-2", + "album": "album-2", + "parent": "al-10", + "isDir": true, + "coverArt": "al-13", + "name": "album-2", + "songCount": 3, + "duration": 300 + }, + { + "id": "al-3", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", + "title": "album-0", + "album": "album-0", + "parent": "al-2", + "isDir": true, + "coverArt": "al-3", + "name": "album-0", + "songCount": 3, + "duration": 300 + }, + { + "id": "al-5", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-0", + "title": "album-2", + "album": "album-2", + "parent": "al-2", + "isDir": true, + "coverArt": "al-5", + "name": "album-2", + "songCount": 3, + "duration": 300 + }, + { + "id": "al-12", + "created": "2019-11-30T00:00:00Z", + "artist": "artist-2", + "title": "album-1", + "album": "album-1", + "parent": "al-10", + "isDir": true, + "coverArt": "al-12", + "name": "album-1", + "songCount": 3, + "duration": 300 } ] } diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_artist b/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_artist index d7712d0..35104eb 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_artist +++ b/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_artist @@ -9,13 +9,14 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300, @@ -23,13 +24,14 @@ }, { "id": "al-4", - "coverArt": "al-4", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300, @@ -37,13 +39,14 @@ }, { "id": "al-5", - "coverArt": "al-5", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300, @@ -51,13 +54,14 @@ }, { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300, @@ -65,13 +69,14 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300, @@ -79,13 +84,14 @@ }, { "id": "al-9", - "coverArt": "al-9", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300, @@ -93,13 +99,14 @@ }, { "id": "al-11", - "coverArt": "al-11", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-0", "album": "album-0", + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300, @@ -107,13 +114,14 @@ }, { "id": "al-12", - "coverArt": "al-12", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300, @@ -121,13 +129,14 @@ }, { "id": "al-13", - "coverArt": "al-13", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-2", "album": "album-2", + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_name b/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_name index c1df51b..6a4aec2 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_name +++ b/server/ctrlsubsonic/testdata/test_get_album_list_two_alpha_name @@ -9,13 +9,14 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300, @@ -23,13 +24,14 @@ }, { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300, @@ -37,13 +39,14 @@ }, { "id": "al-11", - "coverArt": "al-11", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-0", "album": "album-0", + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300, @@ -51,13 +54,14 @@ }, { "id": "al-4", - "coverArt": "al-4", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300, @@ -65,13 +69,14 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300, @@ -79,13 +84,14 @@ }, { "id": "al-12", - "coverArt": "al-12", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300, @@ -93,13 +99,14 @@ }, { "id": "al-5", - "coverArt": "al-5", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300, @@ -107,13 +114,14 @@ }, { "id": "al-9", - "coverArt": "al-9", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300, @@ -121,13 +129,14 @@ }, { "id": "al-13", - "coverArt": "al-13", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-2", "album": "album-2", + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_two_newest b/server/ctrlsubsonic/testdata/test_get_album_list_two_newest index d7712d0..35104eb 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_two_newest +++ b/server/ctrlsubsonic/testdata/test_get_album_list_two_newest @@ -9,13 +9,14 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300, @@ -23,13 +24,14 @@ }, { "id": "al-4", - "coverArt": "al-4", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300, @@ -37,13 +39,14 @@ }, { "id": "al-5", - "coverArt": "al-5", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300, @@ -51,13 +54,14 @@ }, { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300, @@ -65,13 +69,14 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300, @@ -79,13 +84,14 @@ }, { "id": "al-9", - "coverArt": "al-9", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300, @@ -93,13 +99,14 @@ }, { "id": "al-11", - "coverArt": "al-11", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-0", "album": "album-0", + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300, @@ -107,13 +114,14 @@ }, { "id": "al-12", - "coverArt": "al-12", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300, @@ -121,13 +129,14 @@ }, { "id": "al-13", - "coverArt": "al-13", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-2", "album": "album-2", + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_get_album_list_two_random b/server/ctrlsubsonic/testdata/test_get_album_list_two_random index d503321..360ed6d 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_list_two_random +++ b/server/ctrlsubsonic/testdata/test_get_album_list_two_random @@ -8,42 +8,30 @@ "albumList2": { "album": [ { - "id": "al-11", - "coverArt": "al-11", - "artistId": "ar-3", - "artist": "artist-2", - "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", - "title": "album-0", - "album": "album-0", - "name": "album-0", - "songCount": 3, - "duration": 300, - "year": 2021 - }, - { - "id": "al-9", - "coverArt": "al-9", - "artistId": "ar-2", - "artist": "artist-1", - "artists": [{ "id": "ar-2", "name": "artist-1" }], + "id": "al-5", "created": "2019-11-30T00:00:00Z", + "artistId": "ar-1", + "artist": "artist-0", + "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300, "year": 2021 }, { - "id": "al-12", - "coverArt": "al-12", - "artistId": "ar-3", - "artist": "artist-2", - "artists": [{ "id": "ar-3", "name": "artist-2" }], + "id": "al-4", "created": "2019-11-30T00:00:00Z", + "artistId": "ar-1", + "artist": "artist-0", + "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300, @@ -51,69 +39,44 @@ }, { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300, "year": 2021 }, { - "id": "al-4", - "coverArt": "al-4", - "artistId": "ar-1", - "artist": "artist-0", - "artists": [{ "id": "ar-1", "name": "artist-0" }], + "id": "al-12", "created": "2019-11-30T00:00:00Z", + "artistId": "ar-3", + "artist": "artist-2", + "artists": [{ "id": "ar-3", "name": "artist-2" }], + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300, "year": 2021 }, { - "id": "al-3", - "coverArt": "al-3", - "artistId": "ar-1", - "artist": "artist-0", - "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", - "title": "album-0", - "album": "album-0", - "name": "album-0", - "songCount": 3, - "duration": 300, - "year": 2021 - }, - { - "id": "al-13", - "coverArt": "al-13", - "artistId": "ar-3", - "artist": "artist-2", - "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", - "title": "album-2", - "album": "album-2", - "name": "album-2", - "songCount": 3, - "duration": 300, - "year": 2021 - }, - { - "id": "al-5", - "coverArt": "al-5", - "artistId": "ar-1", - "artist": "artist-0", - "artists": [{ "id": "ar-1", "name": "artist-0" }], + "id": "al-9", "created": "2019-11-30T00:00:00Z", + "artistId": "ar-2", + "artist": "artist-1", + "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300, @@ -121,17 +84,63 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300, "year": 2021 + }, + { + "id": "al-11", + "created": "2019-11-30T00:00:00Z", + "artistId": "ar-3", + "artist": "artist-2", + "artists": [{ "id": "ar-3", "name": "artist-2" }], + "displayArtist": "artist-2", + "title": "album-0", + "album": "album-0", + "coverArt": "al-11", + "name": "album-0", + "songCount": 3, + "duration": 300, + "year": 2021 + }, + { + "id": "al-3", + "created": "2019-11-30T00:00:00Z", + "artistId": "ar-1", + "artist": "artist-0", + "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "title": "album-0", + "album": "album-0", + "coverArt": "al-3", + "name": "album-0", + "songCount": 3, + "duration": 300, + "year": 2021 + }, + { + "id": "al-13", + "created": "2019-11-30T00:00:00Z", + "artistId": "ar-3", + "artist": "artist-2", + "artists": [{ "id": "ar-3", "name": "artist-2" }], + "displayArtist": "artist-2", + "title": "album-2", + "album": "album-2", + "coverArt": "al-13", + "name": "album-2", + "songCount": 3, + "duration": 300, + "year": 2021 } ] } diff --git a/server/ctrlsubsonic/testdata/test_get_album_with_cover b/server/ctrlsubsonic/testdata/test_get_album_with_cover index 2c900b5..2e65ac7 100644 --- a/server/ctrlsubsonic/testdata/test_get_album_with_cover +++ b/server/ctrlsubsonic/testdata/test_get_album_with_cover @@ -7,13 +7,14 @@ "openSubsonic": true, "album": { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300, @@ -28,6 +29,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", @@ -51,6 +55,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", @@ -74,6 +81,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", diff --git a/server/ctrlsubsonic/testdata/test_get_artist_id_one b/server/ctrlsubsonic/testdata/test_get_artist_id_one index d8ea4d4..5c1fe45 100644 --- a/server/ctrlsubsonic/testdata/test_get_artist_id_one +++ b/server/ctrlsubsonic/testdata/test_get_artist_id_one @@ -12,13 +12,14 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 3, "duration": 300, @@ -28,13 +29,14 @@ }, { "id": "al-4", - "coverArt": "al-4", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 3, "duration": 300, @@ -44,13 +46,14 @@ }, { "id": "al-5", - "coverArt": "al-5", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_get_artist_id_three b/server/ctrlsubsonic/testdata/test_get_artist_id_three index 6194a5b..c5542f3 100644 --- a/server/ctrlsubsonic/testdata/test_get_artist_id_three +++ b/server/ctrlsubsonic/testdata/test_get_artist_id_three @@ -12,13 +12,14 @@ "album": [ { "id": "al-11", - "coverArt": "al-11", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-0", "album": "album-0", + "coverArt": "al-11", "name": "album-0", "songCount": 3, "duration": 300, @@ -28,13 +29,14 @@ }, { "id": "al-12", - "coverArt": "al-12", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 3, "duration": 300, @@ -44,13 +46,14 @@ }, { "id": "al-13", - "coverArt": "al-13", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-2", "album": "album-2", + "coverArt": "al-13", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_get_artist_id_two b/server/ctrlsubsonic/testdata/test_get_artist_id_two index 9b60fce..e8fb633 100644 --- a/server/ctrlsubsonic/testdata/test_get_artist_id_two +++ b/server/ctrlsubsonic/testdata/test_get_artist_id_two @@ -12,13 +12,14 @@ "album": [ { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 3, "duration": 300, @@ -28,13 +29,14 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 3, "duration": 300, @@ -44,13 +46,14 @@ }, { "id": "al-9", - "coverArt": "al-9", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 3, "duration": 300, diff --git a/server/ctrlsubsonic/testdata/test_search_three_q_alb b/server/ctrlsubsonic/testdata/test_search_three_q_alb index 4d00fa5..7ffb5dd 100644 --- a/server/ctrlsubsonic/testdata/test_search_three_q_alb +++ b/server/ctrlsubsonic/testdata/test_search_three_q_alb @@ -9,13 +9,14 @@ "album": [ { "id": "al-3", - "coverArt": "al-3", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-0", "album": "album-0", + "coverArt": "al-3", "name": "album-0", "songCount": 0, "duration": 0, @@ -25,13 +26,14 @@ }, { "id": "al-4", - "coverArt": "al-4", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-1", "album": "album-1", + "coverArt": "al-4", "name": "album-1", "songCount": 0, "duration": 0, @@ -41,13 +43,14 @@ }, { "id": "al-5", - "coverArt": "al-5", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-1", "artist": "artist-0", "artists": [{ "id": "ar-1", "name": "artist-0" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-0", "title": "album-2", "album": "album-2", + "coverArt": "al-5", "name": "album-2", "songCount": 0, "duration": 0, @@ -57,13 +60,14 @@ }, { "id": "al-7", - "coverArt": "al-7", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-0", "album": "album-0", + "coverArt": "al-7", "name": "album-0", "songCount": 0, "duration": 0, @@ -73,13 +77,14 @@ }, { "id": "al-8", - "coverArt": "al-8", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-1", "album": "album-1", + "coverArt": "al-8", "name": "album-1", "songCount": 0, "duration": 0, @@ -89,13 +94,14 @@ }, { "id": "al-9", - "coverArt": "al-9", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-2", "artist": "artist-1", "artists": [{ "id": "ar-2", "name": "artist-1" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-1", "title": "album-2", "album": "album-2", + "coverArt": "al-9", "name": "album-2", "songCount": 0, "duration": 0, @@ -105,13 +111,14 @@ }, { "id": "al-11", - "coverArt": "al-11", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-0", "album": "album-0", + "coverArt": "al-11", "name": "album-0", "songCount": 0, "duration": 0, @@ -121,13 +128,14 @@ }, { "id": "al-12", - "coverArt": "al-12", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-1", "album": "album-1", + "coverArt": "al-12", "name": "album-1", "songCount": 0, "duration": 0, @@ -137,13 +145,14 @@ }, { "id": "al-13", - "coverArt": "al-13", + "created": "2019-11-30T00:00:00Z", "artistId": "ar-3", "artist": "artist-2", "artists": [{ "id": "ar-3", "name": "artist-2" }], - "created": "2019-11-30T00:00:00Z", + "displayArtist": "artist-2", "title": "album-2", "album": "album-2", + "coverArt": "al-13", "name": "album-2", "songCount": 0, "duration": 0, diff --git a/server/ctrlsubsonic/testdata/test_search_three_q_tra b/server/ctrlsubsonic/testdata/test_search_three_q_tra index a3df719..6c50e10 100644 --- a/server/ctrlsubsonic/testdata/test_search_three_q_tra +++ b/server/ctrlsubsonic/testdata/test_search_three_q_tra @@ -14,6 +14,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", @@ -39,6 +42,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", @@ -64,6 +70,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-3", @@ -89,6 +98,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-4", @@ -114,6 +126,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-4", @@ -139,6 +154,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-4", @@ -164,6 +182,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-5", @@ -189,6 +210,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-5", @@ -214,6 +238,9 @@ "artist": "artist-0", "artistId": "ar-1", "artists": [{ "id": "ar-1", "name": "artist-0" }], + "displayArtist": "artist-0", + "albumArtists": [{ "id": "ar-1", "name": "artist-0" }], + "displayAlbumArtist": "artist-0", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-5", @@ -239,6 +266,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-7", @@ -264,6 +294,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-7", @@ -289,6 +322,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-7", @@ -314,6 +350,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-8", @@ -339,6 +378,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-8", @@ -364,6 +406,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-8", @@ -389,6 +434,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-9", @@ -414,6 +462,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-9", @@ -439,6 +490,9 @@ "artist": "artist-1", "artistId": "ar-2", "artists": [{ "id": "ar-2", "name": "artist-1" }], + "displayArtist": "artist-1", + "albumArtists": [{ "id": "ar-2", "name": "artist-1" }], + "displayAlbumArtist": "artist-1", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-9", @@ -464,6 +518,9 @@ "artist": "artist-2", "artistId": "ar-3", "artists": [{ "id": "ar-3", "name": "artist-2" }], + "displayArtist": "artist-2", + "albumArtists": [{ "id": "ar-3", "name": "artist-2" }], + "displayAlbumArtist": "artist-2", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-11", @@ -489,6 +546,9 @@ "artist": "artist-2", "artistId": "ar-3", "artists": [{ "id": "ar-3", "name": "artist-2" }], + "displayArtist": "artist-2", + "albumArtists": [{ "id": "ar-3", "name": "artist-2" }], + "displayAlbumArtist": "artist-2", "bitRate": 100, "contentType": "audio/flac", "coverArt": "al-11",