aiogram/tests/test_utils/test_deprecated.py
mpa 4f6cb405c8
feat(utils): deprecated descriptor
deprecate CHOSEN_INLINE_QUERY and always return CHOSEN_INLINE_RESULT instead of incorrect value
2020-09-04 23:15:59 +04:00

19 lines
737 B
Python

import pytest
from aiogram.utils.deprecated import DeprecatedReadOnlyClassVar
def test_DeprecatedReadOnlyClassVarCD():
assert DeprecatedReadOnlyClassVar.__slots__ == ("_new_value_getter", "_warning_message")
new_value_of_deprecated_cls_cd = "mpa"
pseudo_owner_cls = type("OpekaCla$$", (), {})
deprecated_cd = DeprecatedReadOnlyClassVar("mopekaa", lambda owner: new_value_of_deprecated_cls_cd)
with pytest.warns(DeprecationWarning):
assert deprecated_cd.__get__(None, pseudo_owner_cls) == new_value_of_deprecated_cls_cd
class MyClass:
some_attribute: DeprecatedReadOnlyClassVar["MyClass", int] = \
DeprecatedReadOnlyClassVar(
"Warning message.", lambda owner: 15)