python-dependency-injector/tests/typing/dynamic_container.py
Leonardus Chen 635c755d74 Retrofit assert type for:
- configuration.py
- container.py
- declarative_container.py
- delegate.py
- dependencies_container.py
- dependency.py
- dict.py
- dynamic_container.py
2025-12-08 14:00:30 +07:00

31 lines
978 B
Python

from typing import Any, Dict
from typing_extensions import assert_type
from dependency_injector import containers, providers
# Test 1: to check setattr
container1 = containers.DynamicContainer()
container1.abc = providers.Provider()
# Test 2: to check override()
container2 = containers.DynamicContainer()
container2.override(containers.DynamicContainer())
# Test 3: to check override_providers()
container3 = containers.DynamicContainer()
container3.override_providers(a=providers.Provider())
with container3.override_providers(a=providers.Provider()):
...
# Test 4: to check set_providers()
container4 = containers.DynamicContainer()
container4.set_providers(a=providers.Provider())
# Test 5: to check .dependencies attribute
container5 = containers.DynamicContainer()
dependencies = container5.dependencies
assert_type(dependencies, Dict[str, providers.Provider[Any]])
# Test 6: to check base class
container6: containers.Container = containers.DynamicContainer()