funkwhale/api/tests/playlists/test_renderers.py

19 lines
684 B
Python

from defusedxml import ElementTree as etree
from funkwhale_api.playlists import renderers, serializers
def test_generate_xspf_from_playlist(factories):
playlist_track = factories["playlists.PlaylistTrack"]()
playlist = playlist_track.playlist
xspf_test = renderers.PlaylistXspfRenderer().render(
serializers.PlaylistSerializer(playlist).data
)
tree = etree.fromstring(xspf_test)
track1_title = playlist_track.track.title
ns = {"xspf": "http://xspf.org/ns/0/"}
assert playlist.name == tree.findtext("./xspf:title", namespaces=ns)
assert track1_title == tree.findtext(
"./xspf:trackList/xspf:track/xspf:title", namespaces=ns
)