46 行
1.5 KiB
Python
46 行
1.5 KiB
Python
import pytest
|
|
|
|
from yandex_music import TracksList
|
|
|
|
|
|
@pytest.fixture(scope='class')
|
|
def tracks_list(track_short):
|
|
return TracksList(TestTracksList.uid, TestTracksList.revision, [track_short])
|
|
|
|
|
|
class TestTracksList:
|
|
uid = None
|
|
revision = None
|
|
|
|
def test_expected_values(self, tracks_list, track_short):
|
|
assert tracks_list.uid == self.uid
|
|
assert tracks_list.revision == self.revision
|
|
assert tracks_list.tracks == [track_short]
|
|
|
|
def test_de_json_required(self, client, track_short):
|
|
json_dict = {'uid': self.uid, 'revision': self.revision, 'tracks': [track_short.to_dict()]}
|
|
tracks_list = TracksList.de_json(json_dict, client)
|
|
|
|
assert tracks_list.uid == self.uid
|
|
assert tracks_list.revision == self.revision
|
|
assert tracks_list.tracks == [track_short]
|
|
|
|
def test_de_json_all(self, client, track_short):
|
|
json_dict = {'uid': self.uid, 'revision': self.revision, 'tracks': [track_short.to_dict()]}
|
|
tracks_list = TracksList.de_json(json_dict, client)
|
|
|
|
assert tracks_list.uid == self.uid
|
|
assert tracks_list.revision == self.revision
|
|
assert tracks_list.tracks == [track_short]
|
|
|
|
def test_equality(self, track_short):
|
|
a = TracksList(self.uid, self.revision, [track_short])
|
|
b = TracksList(123, self.revision, [track_short])
|
|
c = TracksList(self.uid, 10, [track_short])
|
|
|
|
assert a != b
|
|
assert hash(a) != hash(b)
|
|
assert a is not b
|
|
|
|
assert a == c
|