Добавлены основные тесты для следующих классов: Album, Artist, Chart, Counts, Genre, Label, PermissionAlerts, PromoCodeStatus, Restrictions, Settings, Station, StatuonResult, Status, Track.
Исправлены фикстуры и сравнения для вышеперечисленных классов.
Отрефакторен restrictions.py.
Исправлен баг в .to_dict() методе, связанный с десериализцией объектов списков и словарей.
2019-11-09 00:24:54 +09:00
|
|
|
from yandex_music import Counts
|
|
|
|
|
|
|
|
|
|
|
|
class TestCounts:
|
|
|
|
tracks = 94
|
|
|
|
direct_albums = 9
|
|
|
|
also_albums = 0
|
|
|
|
also_tracks = 0
|
|
|
|
|
|
|
|
def test_expected_values(self, counts):
|
|
|
|
assert counts.tracks == self.tracks
|
|
|
|
assert counts.direct_albums == self.direct_albums
|
|
|
|
assert counts.also_albums == self.also_albums
|
|
|
|
assert counts.also_tracks == self.also_tracks
|
|
|
|
|
2019-12-29 16:38:24 +09:00
|
|
|
def test_de_json_none(self, client):
|
|
|
|
assert Counts.de_json({}, client) is None
|
|
|
|
|
Добавлены основные тесты для следующих классов: Album, Artist, Chart, Counts, Genre, Label, PermissionAlerts, PromoCodeStatus, Restrictions, Settings, Station, StatuonResult, Status, Track.
Исправлены фикстуры и сравнения для вышеперечисленных классов.
Отрефакторен restrictions.py.
Исправлен баг в .to_dict() методе, связанный с десериализцией объектов списков и словарей.
2019-11-09 00:24:54 +09:00
|
|
|
def test_de_json_required(self, client):
|
2021-02-03 21:28:10 +09:00
|
|
|
json_dict = {
|
|
|
|
'tracks': self.tracks,
|
|
|
|
'direct_albums': self.direct_albums,
|
|
|
|
'also_albums': self.also_albums,
|
|
|
|
'also_tracks': self.also_tracks,
|
|
|
|
}
|
Добавлены основные тесты для следующих классов: Album, Artist, Chart, Counts, Genre, Label, PermissionAlerts, PromoCodeStatus, Restrictions, Settings, Station, StatuonResult, Status, Track.
Исправлены фикстуры и сравнения для вышеперечисленных классов.
Отрефакторен restrictions.py.
Исправлен баг в .to_dict() методе, связанный с десериализцией объектов списков и словарей.
2019-11-09 00:24:54 +09:00
|
|
|
counts = Counts.de_json(json_dict, client)
|
|
|
|
|
|
|
|
assert counts.tracks == self.tracks
|
|
|
|
assert counts.direct_albums == self.direct_albums
|
|
|
|
assert counts.also_albums == self.also_albums
|
|
|
|
assert counts.also_tracks == self.also_tracks
|
|
|
|
|
|
|
|
def test_de_json_all(self, client):
|
2021-02-03 21:28:10 +09:00
|
|
|
json_dict = {
|
|
|
|
'tracks': self.tracks,
|
|
|
|
'direct_albums': self.direct_albums,
|
|
|
|
'also_albums': self.also_albums,
|
|
|
|
'also_tracks': self.also_tracks,
|
|
|
|
}
|
Добавлены основные тесты для следующих классов: Album, Artist, Chart, Counts, Genre, Label, PermissionAlerts, PromoCodeStatus, Restrictions, Settings, Station, StatuonResult, Status, Track.
Исправлены фикстуры и сравнения для вышеперечисленных классов.
Отрефакторен restrictions.py.
Исправлен баг в .to_dict() методе, связанный с десериализцией объектов списков и словарей.
2019-11-09 00:24:54 +09:00
|
|
|
counts = Counts.de_json(json_dict, client)
|
|
|
|
|
|
|
|
assert counts.tracks == self.tracks
|
|
|
|
assert counts.direct_albums == self.direct_albums
|
|
|
|
assert counts.also_albums == self.also_albums
|
|
|
|
assert counts.also_tracks == self.also_tracks
|
|
|
|
|
|
|
|
def test_equality(self):
|
|
|
|
a = Counts(self.tracks, self.direct_albums, self.also_albums, self.also_tracks)
|
|
|
|
b = Counts(40, self.direct_albums, 30, self.also_tracks)
|
|
|
|
c = Counts(self.tracks, self.direct_albums, 10, 10)
|
|
|
|
d = Counts(self.tracks, self.direct_albums, self.also_albums, self.also_tracks)
|
|
|
|
|
|
|
|
assert a != b != c
|
|
|
|
assert hash(a) != hash(b) != hash(c)
|
|
|
|
assert a is not b is not c
|
|
|
|
|
|
|
|
assert a == d
|