mirror of
https://git.sr.ht/~phw/scotty
synced 2025-05-02 06:37:04 +02:00
Support disc numbers
This commit is contained in:
parent
d810fc9cac
commit
0e3061e837
12 changed files with 32 additions and 0 deletions
|
@ -207,6 +207,7 @@ func (lbListen Listen) ToListen() models.Listen {
|
|||
ArtistNames: []string{track.ArtistName},
|
||||
Duration: track.Duration(),
|
||||
TrackNumber: track.TrackNumber(),
|
||||
DiscNumber: track.DiscNumber(),
|
||||
RecordingMbid: models.MBID(track.RecordingMbid()),
|
||||
ReleaseMbid: models.MBID(track.ReleaseMbid()),
|
||||
ReleaseGroupMbid: models.MBID(track.ReleaseGroupMbid()),
|
||||
|
|
|
@ -47,6 +47,7 @@ func TestListenBrainzListenToListen(t *testing.T) {
|
|||
"foo": "bar",
|
||||
"isrc": "DES561620801",
|
||||
"tracknumber": 5,
|
||||
"discnumber": 1,
|
||||
"recording_mbid": "c0a1fc94-5f04-4a5f-bc09-e5de0c49cd12",
|
||||
"release_group_mbid": "80aca1ee-aa51-41be-9f75-024710d92ff4",
|
||||
"release_mbid": "d7f22677-9803-4d21-ba42-081b633a6f68",
|
||||
|
@ -61,6 +62,7 @@ func TestListenBrainzListenToListen(t *testing.T) {
|
|||
assert.Equal(t, lbListen.TrackMetadata.ReleaseName, listen.ReleaseName)
|
||||
assert.Equal(t, []string{lbListen.TrackMetadata.ArtistName}, listen.ArtistNames)
|
||||
assert.Equal(t, 5, listen.TrackNumber)
|
||||
assert.Equal(t, 1, listen.DiscNumber)
|
||||
assert.Equal(t, models.MBID("c0a1fc94-5f04-4a5f-bc09-e5de0c49cd12"), listen.RecordingMbid)
|
||||
assert.Equal(t, models.MBID("d7f22677-9803-4d21-ba42-081b633a6f68"), listen.ReleaseMbid)
|
||||
assert.Equal(t, models.MBID("80aca1ee-aa51-41be-9f75-024710d92ff4"), listen.ReleaseGroupMbid)
|
||||
|
|
|
@ -136,6 +136,14 @@ func (t Track) TrackNumber() int {
|
|||
return 0
|
||||
}
|
||||
|
||||
func (t Track) DiscNumber() int {
|
||||
value, ok := tryGetInteger[int](t.AdditionalInfo, "discnumber")
|
||||
if ok {
|
||||
return value
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (t Track) Isrc() string {
|
||||
return tryGetValueOrEmpty[string](t.AdditionalInfo, "isrc")
|
||||
}
|
||||
|
|
|
@ -111,6 +111,16 @@ func TestTrackTrackNumber(t *testing.T) {
|
|||
assert.Equal(t, expected, track.TrackNumber())
|
||||
}
|
||||
|
||||
func TestTrackDiscNumber(t *testing.T) {
|
||||
expected := 7
|
||||
track := listenbrainz.Track{
|
||||
AdditionalInfo: map[string]any{
|
||||
"discnumber": expected,
|
||||
},
|
||||
}
|
||||
assert.Equal(t, expected, track.DiscNumber())
|
||||
}
|
||||
|
||||
func TestTrackTrackNumberString(t *testing.T) {
|
||||
track := listenbrainz.Track{
|
||||
AdditionalInfo: map[string]any{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue