Funkwhale: Implemented LovesExport

This commit is contained in:
Philipp Wolfer 2023-11-12 15:57:18 +01:00
parent 48c8843f91
commit 9316838d59
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B
6 changed files with 446 additions and 13 deletions

View file

@ -54,6 +54,7 @@ func TestGetHistoryListenings(t *testing.T) {
assert := assert.New(t)
assert.Equal(2204, result.Count)
require.Len(t, result.Results, 2)
listen1 := result.Results[0]
assert.Equal("2023-11-09T23:59:29.022005Z", listen1.CreationDate)
assert.Equal("Way to Eden", listen1.Track.Title)
@ -62,6 +63,30 @@ func TestGetHistoryListenings(t *testing.T) {
assert.Equal("phw", listen1.User.UserName)
}
func TestGetFavoriteTracks(t *testing.T) {
defer httpmock.DeactivateAndReset()
token := "thetoken"
serverUrl := "https://funkwhale.example.com"
client := funkwhale.NewClient(serverUrl, token)
setupHttpMock(t, client.HttpClient.GetClient(),
"https://funkwhale.example.com/api/v1/favorites/tracks",
"testdata/favorite-tracks.json")
result, err := client.GetFavoriteTracks(0, 2)
require.NoError(t, err)
assert := assert.New(t)
assert.Equal(76, result.Count)
require.Len(t, result.Results, 2)
fav1 := result.Results[0]
assert.Equal("2023-11-05T20:32:32.339738Z", fav1.CreationDate)
assert.Equal("Reign", fav1.Track.Title)
assert.Equal("Home Economics", fav1.Track.Album.Title)
assert.Equal("Prinzhorn Dance School", fav1.Track.Artist.Name)
assert.Equal("phw", fav1.User.UserName)
}
func setupHttpMock(t *testing.T, client *http.Client, url string, testDataPath string) {
httpmock.ActivateNonDefault(client)