mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-07-04 12:23:14 +03:00
Update tests with typing
This commit is contained in:
parent
1df2f60aa7
commit
2ef5ddfe4c
|
@ -3,20 +3,23 @@
|
|||
from decimal import Decimal
|
||||
from typing import Callable
|
||||
|
||||
from dependency_injector import providers
|
||||
from dependency_injector.wiring import inject, Provide, Provider
|
||||
|
||||
from .container import Container, SubContainer
|
||||
from .service import Service
|
||||
|
||||
|
||||
service = Provide[Container.service]
|
||||
service_provider = Provider[Container.service]
|
||||
service: Service = Provide[Container.service]
|
||||
service_provider: providers.Provider[Service] = Provider[Container.service]
|
||||
undefined: providers.Provider = Provide[providers.Provider()]
|
||||
|
||||
|
||||
class TestClass:
|
||||
|
||||
service = Provide[Container.service]
|
||||
service_provider = Provider[Container.service]
|
||||
service: Service = Provide[Container.service]
|
||||
service_provider: providers.Provider[Service] = Provider[Container.service]
|
||||
undefined: providers.Provider = Provide[providers.Provider()]
|
||||
|
||||
@inject
|
||||
def __init__(self, service: Service = Provide[Container.service]):
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
from decimal import Decimal
|
||||
from typing import Callable
|
||||
|
||||
from dependency_injector import providers
|
||||
from dependency_injector.wiring import (
|
||||
inject,
|
||||
Provide,
|
||||
|
@ -19,16 +20,16 @@ from .container import Container
|
|||
from .service import Service
|
||||
|
||||
|
||||
service = Provide['service']
|
||||
service_provider = Provider['service']
|
||||
undefined = Provide['undefined']
|
||||
service: Service = Provide['service']
|
||||
service_provider: providers.Provider[Service] = Provider['service']
|
||||
undefined: providers.Provider = Provide['undefined']
|
||||
|
||||
|
||||
class TestClass:
|
||||
|
||||
service = Provide['service']
|
||||
service_provider = Provider['service']
|
||||
undefined = Provide['undefined']
|
||||
service: Service = Provide['service']
|
||||
service_provider: providers.Provider[Service] = Provider['service']
|
||||
undefined: providers.Provider = Provide['undefined']
|
||||
|
||||
@inject
|
||||
def __init__(self, service: Service = Provide['service']):
|
||||
|
|
|
@ -68,6 +68,7 @@ class WiringTest(unittest.TestCase):
|
|||
def test_module_attributes_wiring(self):
|
||||
self.assertIsInstance(module.service, Service)
|
||||
self.assertIsInstance(module.service_provider(), Service)
|
||||
self.assertIsInstance(module.undefined, Provide)
|
||||
|
||||
def test_class_wiring(self):
|
||||
test_class_object = module.TestClass()
|
||||
|
@ -105,6 +106,7 @@ class WiringTest(unittest.TestCase):
|
|||
def test_class_attribute_wiring(self):
|
||||
self.assertIsInstance(module.TestClass.service, Service)
|
||||
self.assertIsInstance(module.TestClass.service_provider(), Service)
|
||||
self.assertIsInstance(module.TestClass.undefined, Provide)
|
||||
|
||||
def test_function_wiring(self):
|
||||
service = module.test_function()
|
||||
|
@ -228,11 +230,13 @@ class WiringTest(unittest.TestCase):
|
|||
self.container.unwire()
|
||||
self.assertIsInstance(module.service, Provide)
|
||||
self.assertIsInstance(module.service_provider, Provider)
|
||||
self.assertIsInstance(module.undefined, Provide)
|
||||
|
||||
def test_unwire_class_attributes(self):
|
||||
self.container.unwire()
|
||||
self.assertIsInstance(module.TestClass.service, Provide)
|
||||
self.assertIsInstance(module.TestClass.service_provider, Provider)
|
||||
self.assertIsInstance(module.TestClass.undefined, Provide)
|
||||
|
||||
def test_wire_multiple_containers(self):
|
||||
sub_container = SubContainer()
|
||||
|
|
Loading…
Reference in New Issue
Block a user