yandex-music-api/tests/test_supplement.py

66 行
2.6 KiB
Python
Raw Blame 履歴

このファイルには曖昧(ambiguous)なUnicode文字が含まれています

このファイルには、他の文字と見間違える可能性があるUnicode文字が含まれています。 それが意図的なものと考えられる場合は、この警告を無視して構いません。 それらの文字を表示するにはエスケープボタンを使用します。

import pytest
from yandex_music import Supplement
@pytest.fixture(scope='class')
def supplement(lyrics, video_supplement):
return Supplement(
TestSupplement.id, lyrics, [video_supplement], TestSupplement.radio_is_available, TestSupplement.description
)
class TestSupplement:
id = 103844
radio_is_available = False
description = (
'"ИНТЕРВЬЮ С КОМИКОМ" - это не юмористический проект. Это разговор о жизни, творчестве, интересах, '
'целях и приоритетах, о том, кто как живет и почему.\nНовый проект Дмитрия Романова, в котором он '
'берет интервью.\n Гость выпуска - комик Нурлан Сабуров'
)
def test_expected_values(self, supplement, lyrics, video_supplement):
assert supplement.id == self.id
assert supplement.lyrics == lyrics
assert supplement.videos == [video_supplement]
assert supplement.radio_is_available == self.radio_is_available
assert supplement.description == self.description
def test_de_json_none(self, client):
assert Supplement.de_json({}, client) is None
def test_de_json_required(self, client, lyrics, video_supplement):
json_dict = {'id_': self.id, 'lyrics': lyrics.to_dict(), 'videos': [video_supplement.to_dict()]}
supplement = Supplement.de_json(json_dict, client)
assert supplement.id == self.id
assert supplement.lyrics == lyrics
assert supplement.videos == [video_supplement]
def test_de_json_all(self, client, lyrics, video_supplement):
json_dict = {
'id_': self.id,
'lyrics': lyrics.to_dict(),
'videos': [video_supplement.to_dict()],
'radio_is_available': self.radio_is_available,
'description': self.description,
}
supplement = Supplement.de_json(json_dict, client)
assert supplement.id == self.id
assert supplement.lyrics == lyrics
assert supplement.videos == [video_supplement]
assert supplement.radio_is_available == self.radio_is_available
assert supplement.description == self.description
def test_equality(self, lyrics, video_supplement):
a = Supplement(self.id, lyrics, [video_supplement])
b = Supplement(self.id, None, [video_supplement])
c = Supplement(self.id, lyrics, [video_supplement])
assert a != b
assert hash(a) != hash(b)
assert a is not b
assert a == c