31 lines
975 B
Python
31 lines
975 B
Python
from funkwhale_api.moderation import serializers
|
|
|
|
|
|
def test_user_filter_serializer_repr(factories):
|
|
artist = factories["music.Artist"]()
|
|
content_filter = factories["moderation.UserFilter"](target_artist=artist)
|
|
|
|
expected = {
|
|
"uuid": str(content_filter.uuid),
|
|
"target": {"type": "artist", "id": artist.pk, "name": artist.name},
|
|
"creation_date": content_filter.creation_date.isoformat().replace(
|
|
"+00:00", "Z"
|
|
),
|
|
}
|
|
|
|
serializer = serializers.UserFilterSerializer(content_filter)
|
|
|
|
assert serializer.data == expected
|
|
|
|
|
|
def test_user_filter_serializer_save(factories):
|
|
artist = factories["music.Artist"]()
|
|
user = factories["users.User"]()
|
|
data = {"target": {"type": "artist", "id": artist.pk}}
|
|
|
|
serializer = serializers.UserFilterSerializer(data=data)
|
|
serializer.is_valid(raise_exception=True)
|
|
content_filter = serializer.save(user=user)
|
|
|
|
assert content_filter.target_artist == artist
|