construct subsonic models elsewhere
This commit is contained in:
@@ -48,10 +48,10 @@ func Scrobble(apiKey, secret, session string, track *model.Track,
|
||||
}
|
||||
params.Add("api_key", apiKey)
|
||||
params.Add("sk", session)
|
||||
params.Add("artist", track.Artist)
|
||||
params.Add("artist", track.TrackArtist)
|
||||
params.Add("track", track.Title)
|
||||
params.Add("album", track.Album.Title)
|
||||
params.Add("albumArtist", track.AlbumArtist.Name)
|
||||
params.Add("albumArtist", track.Artist.Name)
|
||||
params.Add("trackNumber", strconv.Itoa(track.TrackNumber))
|
||||
params.Add("api_sig", getParamSignature(params, secret))
|
||||
_, err := makeRequest("POST", params)
|
||||
|
||||
23
server/lastfm/lastfm_test.go
Normal file
23
server/lastfm/lastfm_test.go
Normal file
@@ -0,0 +1,23 @@
|
||||
package lastfm
|
||||
|
||||
import (
|
||||
"crypto/md5"
|
||||
"fmt"
|
||||
"net/url"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestGetParamSignature(t *testing.T) {
|
||||
params := url.Values{}
|
||||
params.Add("ccc", "CCC")
|
||||
params.Add("bbb", "BBB")
|
||||
params.Add("aaa", "AAA")
|
||||
params.Add("ddd", "DDD")
|
||||
actual := getParamSignature(params, "secret")
|
||||
expected := fmt.Sprintf("%x", md5.Sum([]byte(
|
||||
"aaaAAAbbbBBBcccCCCdddDDDsecret",
|
||||
)))
|
||||
if actual != expected {
|
||||
t.Errorf("expected %x, got %s", expected, actual)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user