mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-02-07 07:00:49 +03:00
Add container usage to the custom provider example
This commit is contained in:
parent
d6e4e8fb08
commit
ad260fe709
|
@ -1,6 +1,6 @@
|
||||||
"""Custom provider example."""
|
"""Custom provider example."""
|
||||||
|
|
||||||
from dependency_injector import providers
|
from dependency_injector import containers, providers
|
||||||
|
|
||||||
|
|
||||||
class CustomFactory(providers.Provider):
|
class CustomFactory(providers.Provider):
|
||||||
|
@ -29,14 +29,18 @@ class CustomFactory(providers.Provider):
|
||||||
return self._factory(*args, **kwargs)
|
return self._factory(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
factory = CustomFactory(object)
|
class Container(containers.DeclarativeContainer):
|
||||||
|
|
||||||
|
factory = CustomFactory(object)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
object1 = factory()
|
container = Container()
|
||||||
|
|
||||||
|
object1 = container.factory()
|
||||||
assert isinstance(object1, object)
|
assert isinstance(object1, object)
|
||||||
|
|
||||||
object2 = factory()
|
object2 = container.factory()
|
||||||
assert isinstance(object1, object)
|
assert isinstance(object1, object)
|
||||||
|
|
||||||
assert object1 is not object2
|
assert object1 is not object2
|
||||||
|
|
Loading…
Reference in New Issue
Block a user