yandex-music-api/tests/test_settings.py

59 行
2.4 KiB
Python

from yandex_music import Settings
class TestSettings:
web_payment_url = 'https://music.yandex.ru/webview/payment'
promo_codes_enabled = True
def test_expected_values(self, settings, product, price):
assert settings.in_app_products == [product]
assert settings.native_products == [product]
assert settings.web_payment_url == self.web_payment_url
assert settings.promo_codes_enabled == self.promo_codes_enabled
assert settings.web_payment_month_product_price == price
def test_de_json_none(self, client):
assert Settings.de_json({}, client) is None
def test_de_json_required(self, client, product):
json_dict = {
'in_app_products': [product.to_dict()],
'native_products': [product.to_dict()],
'web_payment_url': self.web_payment_url,
'promo_codes_enabled': self.promo_codes_enabled,
}
settings = Settings.de_json(json_dict, client)
assert settings.in_app_products == [product]
assert settings.native_products == [product]
assert settings.web_payment_url == self.web_payment_url
assert settings.promo_codes_enabled == self.promo_codes_enabled
def test_de_json_all(self, client, product, price):
json_dict = {
'in_app_products': [product.to_dict()],
'native_products': [product.to_dict()],
'web_payment_url': self.web_payment_url,
'promo_codes_enabled': self.promo_codes_enabled,
'web_payment_month_product_price': price.to_dict(),
}
settings = Settings.de_json(json_dict, client)
assert settings.in_app_products == [product]
assert settings.native_products == [product]
assert settings.web_payment_url == self.web_payment_url
assert settings.promo_codes_enabled == self.promo_codes_enabled
assert settings.web_payment_month_product_price == price
def test_equality(self, product):
a = Settings([product], [product], self.web_payment_url, self.promo_codes_enabled)
b = Settings([product], [product], '', self.promo_codes_enabled)
c = Settings([product], [product], self.web_payment_url, False)
d = Settings([product], [product], self.web_payment_url, self.promo_codes_enabled)
assert a != b != c
assert hash(a) != hash(b) != hash(c)
assert a is not b is not c
assert a == d