Exemple #1
0
    def test_equality(self, track, pager):
        a = ArtistTracks([track], pager)
        b = ArtistTracks([], pager)
        c = ArtistTracks([track], pager)

        assert a != b
        assert hash(a) != hash(b)
        assert a is not b

        assert a == c
Exemple #2
0
    def artists_tracks(self, artist_id: str or int, page=0, page_size=20, timeout=None, *args, **kwargs):
        """Получение треков артиста.

        Args:
            artist_id (:obj:`str` | :obj:`int`): Уникальный идентификатор артиста.
            page (:obj:`int`, optional): Номер страницы.
            page_size (:obj:`int`, optional): Количество треков на странице.
            timeout (:obj:`int` | :obj:`float`, optional): Если это значение указано, используется как время ожидания
                ответа от сервера вместо указанного при создании пула.
            **kwargs (:obj:`dict`, optional): Произвольные аргументы (будут переданы в запрос).

        Returns:
            :obj:`yandex_music.ArtistsTracks`: Объекта класса :class:`yandex_music.ArtistsTracks`
            представляющий страницу списка треков артиста
        """

        url = f'{self.base_url}/artists/{artist_id}/tracks'

        params = {
            'page': page,
            'page-size': page_size
        }

        result = self._request.get(url, params, timeout=timeout, *args, **kwargs)

        return ArtistTracks.de_json(result, self)
Exemple #3
0
def artist_tracks(track, pager):
    return ArtistTracks([track], pager)
Exemple #4
0
    def test_de_json_all(self, client, track, pager):
        json_dict = {'tracks': [track.to_dict()], 'pager': pager.to_dict()}
        artist_tracks = ArtistTracks.de_json(json_dict, client)

        assert artist_tracks.tracks == [track]
        assert artist_tracks.pager == pager
Exemple #5
0
 def test_de_json_none(self, client):
     assert ArtistTracks.de_json({}, client) is None