Performance improvement when fetching favorites, down to a single, small http request

This commit is contained in:
Eliot Berriot 2019-01-10 11:58:18 +01:00
commit 3916986fb8
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
4 changed files with 31 additions and 10 deletions

View file

@ -39,6 +39,18 @@ def test_user_can_get_his_favorites(api_request, factories, logged_in_client, cl
assert response.data["results"] == expected
def test_user_can_retrieve_all_favorites_at_once(
api_request, factories, logged_in_client, client
):
favorite = factories["favorites.TrackFavorite"](user=logged_in_client.user)
factories["favorites.TrackFavorite"]()
url = reverse("api:v1:favorites:tracks-all")
response = logged_in_client.get(url, {"user": logged_in_client.user.pk})
expected = [{"track": favorite.track.id, "id": favorite.id}]
assert response.status_code == 200
assert response.data["results"] == expected
def test_user_can_add_favorite_via_api(factories, logged_in_client, activity_muted):
track = factories["music.Track"]()
url = reverse("api:v1:favorites:tracks-list")