yandex-music-api/tests/test_promo_code_status.py

46 行
1.8 KiB
Python

import pytest
from yandex_music import PromoCodeStatus
@pytest.fixture(scope='class')
def promo_code_status(status):
return PromoCodeStatus(TestPromoCodeStatus.status, TestPromoCodeStatus.status_desc, status)
class TestPromoCodeStatus:
status = 'user-temporary-banned'
status_desc = 'You entered the wrong code more than 10 times. You will be able to continue in 24 hours.'
def test_expected_values(self, promo_code_status, status):
assert promo_code_status.status == self.status
assert promo_code_status.status_desc == self.status_desc
assert promo_code_status.account_status == status
def test_de_json_required(self, client, status):
json_dict = {'status': self.status, 'status_desc': self.status_desc, 'account_status': status.to_dict()}
promo_code_status = PromoCodeStatus.de_json(json_dict, client)
assert promo_code_status.status == self.status
assert promo_code_status.status_desc == self.status_desc
assert promo_code_status.account_status == status
def test_de_json_all(self, client, status):
json_dict = {'status': self.status, 'status_desc': self.status_desc, 'account_status': status.to_dict()}
promo_code_status = PromoCodeStatus.de_json(json_dict, client)
assert promo_code_status.status == self.status
assert promo_code_status.status_desc == self.status_desc
assert promo_code_status.account_status == status
def test_equality(self, status):
a = PromoCodeStatus(self.status, self.status_desc, status)
b = PromoCodeStatus(self.status, '', status)
c = PromoCodeStatus(self.status, self.status_desc, status)
assert a != b
assert hash(a) != hash(b)
assert a is not b
assert a == c