Exemplo n.º 1
0
    def test_equality(self, block):
        a = Landing(self.pumpkin, self.content_id, [block])
        b = Landing(self.pumpkin, '', [block])
        c = Landing(self.pumpkin, self.content_id, None)
        d = Landing(self.pumpkin, self.content_id, [block])

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

        assert a == d
Exemplo n.º 2
0
    def landing(self, blocks: str or list, timeout=None, *args, **kwargs):
        """Получение лендинг-страницы содержащий блоки с новыми релизами, чартами, плейлистами с новинками и т.д.

        Поддерживаемые типы блоков: personalplaylists, promotions, new-releases, new-playlists, mixes,c hart, artists,
        albums, playlists, play_contexts.

        Args:
            blocks (:obj:`str` | :obj:`list` из :obj:`str`): Блок или список блоков необходимых для выдачи.
            timeout (:obj:`int` | :obj:`float`, optional): Если это значение указано, используется как время ожидания
                ответа от сервера вместо указанного при создании пула.
            **kwargs (:obj:`dict`, optional): Произвольные аргументы (будут переданы в запрос).

        Returns:
            :obj:`yandex_music.Landing`: Объекта класса :class:`yandex_music.Landing`
            представляющий лендинг-страницу, иначе :obj:`None`.

        Raises:
            :class:`yandex_music.YandexMusicError`
        """

        url = f'{self.base_url}/landing3'

        result = self._request.get(url, {'blocks': blocks}, timeout=timeout, *args, **kwargs)

        return Landing.de_json(result, self)
Exemplo n.º 3
0
    def landing(self, blocks: str or list, timeout=None, *args, **kwargs):
        url = f'{self.base_url}/landing3'

        result = self._request.get(url, {'blocks': blocks},
                                   timeout=timeout,
                                   *args,
                                   **kwargs)

        return Landing.de_json(result, self)
Exemplo n.º 4
0
    def test_de_json_all(self, client, block):
        json_dict = {
            'pumpkin': self.pumpkin,
            'content_id': self.content_id,
            'blocks': [block.to_dict()]
        }
        landing = Landing.de_json(json_dict, client)

        assert landing.pumpkin == self.pumpkin
        assert landing.content_id == self.content_id
        assert landing.blocks == [block]
Exemplo n.º 5
0
def landing(block):
    return Landing(TestLanding.pumpkin, TestLanding.content_id, [block])
Exemplo n.º 6
0
 def test_de_json_none(self, client):
     assert Landing.de_json({}, client) is None