subsonic: include subsonic_id as additional metadata

This commit is contained in:
Philipp Wolfer 2024-01-26 12:19:00 +01:00
parent fee1eba080
commit 1aa7b61649
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B
2 changed files with 11 additions and 7 deletions

View file

@ -100,13 +100,15 @@ func SongAsLove(song subsonic.Child, username string) models.Love {
UserName: username,
Created: song.Starred,
Track: models.Track{
TrackName: song.Title,
ReleaseName: song.Album,
ArtistNames: []string{song.Artist},
TrackNumber: song.Track,
DiscNumber: song.DiscNumber,
AdditionalInfo: map[string]any{},
Duration: time.Duration(song.Duration * int(time.Second)),
TrackName: song.Title,
ReleaseName: song.Album,
ArtistNames: []string{song.Artist},
TrackNumber: song.Track,
DiscNumber: song.DiscNumber,
AdditionalInfo: map[string]any{
"subsonic_id": song.ID,
},
Duration: time.Duration(song.Duration * int(time.Second)),
},
}

View file

@ -39,6 +39,7 @@ func TestFromConfig(t *testing.T) {
func TestSongToLove(t *testing.T) {
user := "outsidecontext"
song := go_subsonic.Child{
ID: "foo123",
Starred: time.Unix(1699574369, 0),
Title: "Oweynagat",
Album: "Here Now, There Then",
@ -59,4 +60,5 @@ func TestSongToLove(t *testing.T) {
assert.Equal(song.Track, love.Track.TrackNumber)
assert.Equal(song.DiscNumber, love.Track.DiscNumber)
assert.Equal([]string{song.Genre}, love.Track.Tags)
assert.Equal(song.ID, love.AdditionalInfo["subsonic_id"])
}