From 8d0b7050d200d5e8636856a4f1cbcbb7687e07eb Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Sun, 15 Nov 2020 15:22:46 -0500 Subject: [PATCH] Add @inject to the test samples --- tests/unit/samples/wiringsamples/module.py | 12 ++++++++++++ .../wiringsamples/package/subpackage/submodule.py | 3 ++- tests/unit/samples/wiringsamples/resourceclosing.py | 3 ++- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/tests/unit/samples/wiringsamples/module.py b/tests/unit/samples/wiringsamples/module.py index ac8517ea..7a3ae557 100644 --- a/tests/unit/samples/wiringsamples/module.py +++ b/tests/unit/samples/wiringsamples/module.py @@ -11,30 +11,37 @@ from .service import Service class TestClass: + @inject def __init__(self, service: Service = Provide[Container.service]): self.service = service + @inject def method(self, service: Service = Provide[Container.service]): return service @classmethod + @inject def class_method(cls, service: Service = Provide[Container.service]): return service @staticmethod + @inject def static_method(service: Service = Provide[Container.service]): return service +@inject def test_function(service: Service = Provide[Container.service]): return service +@inject def test_function_provider(service_provider: Callable[..., Service] = Provider[Container.service]): service = service_provider() return service +@inject def test_config_value( some_value_int: int = Provide[Container.config.a.b.c.as_int()], some_value_str: str = Provide[Container.config.a.b.c.as_(str)], @@ -43,23 +50,28 @@ def test_config_value( return some_value_int, some_value_str, some_value_decimal +@inject def test_provide_provider(service_provider: Callable[..., Service] = Provider[Container.service.provider]): service = service_provider() return service +@inject def test_provided_instance(some_value: int = Provide[Container.service.provided.foo['bar'].call()]): return some_value +@inject def test_subcontainer_provider(some_value: int = Provide[Container.sub.int_object]): return some_value +@inject def test_config_invariant(some_value: int = Provide[Container.config.option[Container.config.switch]]): return some_value +@inject def test_provide_from_different_containers( service: Service = Provide[Container.service], some_value: int = Provide[SubContainer.int_object], diff --git a/tests/unit/samples/wiringsamples/package/subpackage/submodule.py b/tests/unit/samples/wiringsamples/package/subpackage/submodule.py index 8f8e0d7f..e99c131e 100644 --- a/tests/unit/samples/wiringsamples/package/subpackage/submodule.py +++ b/tests/unit/samples/wiringsamples/package/subpackage/submodule.py @@ -1,8 +1,9 @@ -from dependency_injector.wiring import Provide +from dependency_injector.wiring import inject, Provide from ...container import Container from ...service import Service +@inject def test_function(service: Service = Provide[Container.service]): return service diff --git a/tests/unit/samples/wiringsamples/resourceclosing.py b/tests/unit/samples/wiringsamples/resourceclosing.py index f7f35bd1..8dfee241 100644 --- a/tests/unit/samples/wiringsamples/resourceclosing.py +++ b/tests/unit/samples/wiringsamples/resourceclosing.py @@ -1,5 +1,5 @@ from dependency_injector import containers, providers -from dependency_injector.wiring import Provide, Closing +from dependency_injector.wiring import inject, Provide, Closing class Service: @@ -32,5 +32,6 @@ class Container(containers.DeclarativeContainer): service = providers.Resource(init_service) +@inject def test_function(service: Service = Closing[Provide[Container.service]]): return service