/
niceSOFT
/
python3-attrs
Обзор
Документация
Войти
/
niceSOFT
/
python3-attrs
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
18.2.0
tests/test_init_subclass.py
46 строк
965 B
Hynek Schlawack
Fade to Black (#392)
10 июн 2018, 20:40
Не верифицирован
10 июн 2018, 20:40
a372d51
Код
Авторство
О чём код?
""" Tests for `__init_subclass__` related tests. Python 3.6+ only. """ import pytest import attr @pytest.mark.parametrize("slots", [True, False]) def test_init_subclass_vanilla(slots): """ `super().__init_subclass__` can be used if the subclass is not an attrs class both with dict and slots classes. """ @attr.s(slots=slots) class Base: def __init_subclass__(cls, param, **kw): super().__init_subclass__(**kw) cls.param = param class Vanilla(Base, param="foo"): pass assert "foo" == Vanilla().param def test_init_subclass_attrs(): """ `__init_subclass__` works with attrs classes as long as slots=False. """ @attr.s(slots=False) class Base: def __init_subclass__(cls, param, **kw): super().__init_subclass__(**kw) cls.param = param @attr.s class Attrs(Base, param="foo"): pass assert "foo" == Attrs().param