yandex-music-api/tests/test_search_result.py

51 行
1.8 KiB
Python

from yandex_music import SearchResult
class TestSearchResult:
total = 3
per_page = 10
order = 0
def test_expected_values(self, search_result_with_results):
search_result, results = search_result_with_results
assert search_result.total == self.total
assert search_result.per_page == self.per_page
assert search_result.order == self.order
assert search_result.results == results
def test_de_json_required(self, client, result_with_type):
result, type = result_with_type
json_dict = {'total': self.total, 'per_page': self.per_page, 'order': self.order, 'results': [result.to_dict()]}
search_result = SearchResult.de_json(json_dict, client, type)
assert search_result.total == self.total
assert search_result.per_page == self.per_page
assert search_result.order == self.order
assert search_result.results == [result]
def test_de_json_all(self, client, result_with_type):
result, type = result_with_type
json_dict = {'total': self.total, 'per_page': self.per_page, 'order': self.order, 'results': [result.to_dict()]}
search_result = SearchResult.de_json(json_dict, client, type)
assert search_result.total == self.total
assert search_result.per_page == self.per_page
assert search_result.order == self.order
assert search_result.results == [result]
def test_equality(self, result_with_type):
result, _ = result_with_type
a = SearchResult(self.total, self.per_page, self.order, [result])
b = SearchResult(10, self.per_page, 1, [result])
c = SearchResult(self.total, self.per_page, self.order, [result])
assert a != b
assert hash(a) != hash(b)
assert a is not b
assert a == c