def test_songs_by_playlist(self): playlist = 'Xmas Music' client = EmbyClient(HOST, USERNAME, PASSWORD) response = client.search(playlist, [MediaItemType.PLAYLIST.value]) search_items = EmbyCroft.parse_search_hints_from_response(response) playlists = EmbyMediaItem.from_list(search_items) assert len(playlists) == 1 playlist_id = playlists[0].id songs = client.get_songs_by_playlist(playlist_id) assert songs is not None
def test_songs_by_album(self): album = 'deadweight' client = EmbyClient(HOST, USERNAME, PASSWORD) response = client.search(album, [MediaItemType.ALBUM.value]) search_items = EmbyCroft.parse_search_hints_from_response(response) albums = EmbyMediaItem.from_list(search_items) assert len(albums) == 1 album_id = albums[0].id songs = client.get_songs_by_album(album_id) assert songs is not None for song in songs.json()['Items']: assert album == song['Album'].lower()
def test_songs_by_artist(self): artist = 'slaves' client = EmbyClient(HOST, USERNAME, PASSWORD) response = client.search(artist, [MediaItemType.ARTIST.value]) search_items = EmbyCroft.parse_search_hints_from_response(response) artists = EmbyMediaItem.from_list(search_items) assert len(artists) == 1 artist_id = artists[0].id songs = client.get_songs_by_artist(artist_id) assert songs is not None for song in songs.json()['Items']: assert artist in [a.lower() for a in song['Artists']]