37 lines
1004 B
Python
37 lines
1004 B
Python
from django.urls import reverse
|
|
|
|
from funkwhale_api.history import models
|
|
|
|
|
|
def test_can_create_listening(factories):
|
|
track = factories["music.Track"]()
|
|
user = factories["users.User"]()
|
|
models.Listening.objects.create(user=user, track=track)
|
|
|
|
|
|
def test_logged_in_user_can_create_listening_via_api(
|
|
logged_in_client, factories, activity_muted
|
|
):
|
|
track = factories["music.Track"]()
|
|
|
|
url = reverse("api:v1:history:listenings-list")
|
|
logged_in_client.post(url, {"track": track.pk})
|
|
|
|
listening = models.Listening.objects.latest("id")
|
|
|
|
assert listening.track == track
|
|
assert listening.user == logged_in_client.user
|
|
|
|
|
|
def test_adding_listening_calls_activity_record(
|
|
factories, logged_in_client, activity_muted
|
|
):
|
|
track = factories["music.Track"]()
|
|
|
|
url = reverse("api:v1:history:listenings-list")
|
|
logged_in_client.post(url, {"track": track.pk})
|
|
|
|
listening = models.Listening.objects.latest("id")
|
|
|
|
activity_muted.assert_called_once_with(listening)
|