From 8ade2b7839300ca45cc5bb40f0d7c594a599c0af Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Thu, 30 Sep 2021 20:09:42 -0400 Subject: [PATCH] Update quotes in tests --- src/dependency_injector/providers.c | 34 +- src/dependency_injector/providers.pyx | 6 +- tests/performance/test.py | 24 +- tests/typing/callable.py | 12 +- tests/typing/configuration.py | 10 +- tests/typing/declarative_container.py | 2 +- tests/typing/factory.py | 14 +- tests/typing/list.py | 2 +- tests/typing/object.py | 4 +- tests/typing/selector.py | 10 +- tests/typing/singleton.py | 18 +- tests/unit/asyncutils.py | 4 +- .../containers/test_declarative_py2_py3.py | 64 +- .../test_dynamic_async_resources_py36.py | 50 +- tests/unit/containers/test_dynamic_py2_py3.py | 86 +- tests/unit/containers/test_traversal_py3.py | 32 +- tests/unit/ext/test_aiohttp_py35.py | 30 +- tests/unit/ext/test_flask_py2_py3.py | 32 +- tests/unit/providers/singleton_common.py | 60 +- tests/unit/providers/test_async_py36.py | 54 +- tests/unit/providers/test_base_py2_py3.py | 104 +- .../unit/providers/test_callables_py2_py3.py | 18 +- .../providers/test_configuration_py2_py3.py | 918 +++++++++--------- .../unit/providers/test_container_py2_py3.py | 80 +- tests/unit/providers/test_coroutines_py35.py | 26 +- tests/unit/providers/test_dict_py2_py3.py | 102 +- .../unit/providers/test_factories_py2_py3.py | 84 +- .../unit/providers/test_injections_py2_py3.py | 18 +- tests/unit/providers/test_list_py2_py3.py | 14 +- .../test_provided_instance_py2_py3.py | 62 +- tests/unit/providers/test_resource_py35.py | 34 +- tests/unit/providers/test_selector_py2_py3.py | 36 +- .../unit/providers/test_singletons_py2_py3.py | 28 +- tests/unit/providers/test_singletons_py3.py | 4 +- tests/unit/providers/test_traversal_py3.py | 142 +-- tests/unit/providers/test_utils_py2_py3.py | 4 +- tests/unit/samples/schemasample/services.py | 14 +- tests/unit/samples/wiringfastapi/web.py | 10 +- tests/unit/samples/wiringflask/web.py | 10 +- tests/unit/samples/wiringsamples/imports.py | 2 +- tests/unit/samples/wiringsamples/module.py | 2 +- .../unit/samples/wiringsamples/queuemodule.py | 2 +- .../wiringstringidssamples/asyncinjections.py | 8 +- .../samples/wiringstringidssamples/module.py | 60 +- .../package/subpackage/submodule.py | 2 +- .../wiringstringidssamples/resourceclosing.py | 2 +- tests/unit/schema/test_containers_api_py36.py | 74 +- tests/unit/schema/test_integration_py36.py | 84 +- tests/unit/test_common_py2_py3.py | 2 +- tests/unit/wiring/test_wiring_py36.py | 34 +- .../wiring/test_wiring_string_ids_py36.py | 28 +- tests/unit/wiring/test_wiringfastapi_py36.py | 16 +- 52 files changed, 1285 insertions(+), 1287 deletions(-) diff --git a/src/dependency_injector/providers.c b/src/dependency_injector/providers.c index 7b300801..72e37299 100644 --- a/src/dependency_injector/providers.c +++ b/src/dependency_injector/providers.c @@ -3659,8 +3659,8 @@ static const char __pyx_k_to[] = "to"; static const char __pyx_k_0_1[] = "{0}={1}"; static const char __pyx_k__10[] = "__"; static const char __pyx_k__30[] = ", "; -static const char __pyx_k__31[] = "('"; -static const char __pyx_k__32[] = "')"; +static const char __pyx_k__31[] = "(\""; +static const char __pyx_k__32[] = "\")"; static const char __pyx_k__33[] = ")"; static const char __pyx_k_cls[] = "cls"; static const char __pyx_k_doc[] = "__doc__"; @@ -78727,7 +78727,7 @@ static int __pyx_pf_19dependency_injector_9providers_16ProvidedInstance___init__ * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.__provides}\')' + * return f'{self.__class__.__name__}("{self.__provides}")' * */ @@ -78760,7 +78760,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_16ProvidedInstance_2_ /* "dependency_injector/providers.pyx":4054 * * def __repr__(self): - * return f'{self.__class__.__name__}(\'{self.__provides}\')' # <<<<<<<<<<<<<< + * return f'{self.__class__.__name__}("{self.__provides}")' # <<<<<<<<<<<<<< * * def __deepcopy__(self, memo): */ @@ -78808,7 +78808,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_16ProvidedInstance_2_ * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.__provides}\')' + * return f'{self.__class__.__name__}("{self.__provides}")' * */ @@ -78826,7 +78826,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_16ProvidedInstance_2_ } /* "dependency_injector/providers.pyx":4056 - * return f'{self.__class__.__name__}(\'{self.__provides}\')' + * return f'{self.__class__.__name__}("{self.__provides}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) @@ -78982,7 +78982,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_16ProvidedInstance_4_ goto __pyx_L0; /* "dependency_injector/providers.pyx":4056 - * return f'{self.__class__.__name__}(\'{self.__provides}\')' + * return f'{self.__class__.__name__}("{self.__provides}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) @@ -80355,7 +80355,7 @@ static int __pyx_pf_19dependency_injector_9providers_15AttributeGetter___init__( * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * */ @@ -80388,7 +80388,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_15AttributeGetter_2__ /* "dependency_injector/providers.pyx":4110 * * def __repr__(self): - * return f'{self.__class__.__name__}(\'{self.name}\')' # <<<<<<<<<<<<<< + * return f'{self.__class__.__name__}("{self.name}")' # <<<<<<<<<<<<<< * * def __deepcopy__(self, memo): */ @@ -80439,7 +80439,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_15AttributeGetter_2__ * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * */ @@ -80457,7 +80457,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_15AttributeGetter_2__ } /* "dependency_injector/providers.pyx":4112 - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) @@ -80642,7 +80642,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_15AttributeGetter_4__ goto __pyx_L0; /* "dependency_injector/providers.pyx":4112 - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) @@ -82639,7 +82639,7 @@ static int __pyx_pf_19dependency_injector_9providers_10ItemGetter___init__(struc * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * */ @@ -82672,7 +82672,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_10ItemGetter_2__repr_ /* "dependency_injector/providers.pyx":4192 * * def __repr__(self): - * return f'{self.__class__.__name__}(\'{self.name}\')' # <<<<<<<<<<<<<< + * return f'{self.__class__.__name__}("{self.name}")' # <<<<<<<<<<<<<< * * def __deepcopy__(self, memo): */ @@ -82723,7 +82723,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_10ItemGetter_2__repr_ * super().__init__() * * def __repr__(self): # <<<<<<<<<<<<<< - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * */ @@ -82741,7 +82741,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_10ItemGetter_2__repr_ } /* "dependency_injector/providers.pyx":4194 - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) @@ -82926,7 +82926,7 @@ static PyObject *__pyx_pf_19dependency_injector_9providers_10ItemGetter_4__deepc goto __pyx_L0; /* "dependency_injector/providers.pyx":4194 - * return f'{self.__class__.__name__}(\'{self.name}\')' + * return f'{self.__class__.__name__}("{self.name}")' * * def __deepcopy__(self, memo): # <<<<<<<<<<<<<< * copied = memo.get(id(self)) diff --git a/src/dependency_injector/providers.pyx b/src/dependency_injector/providers.pyx index 66812223..567b2bab 100644 --- a/src/dependency_injector/providers.pyx +++ b/src/dependency_injector/providers.pyx @@ -4051,7 +4051,7 @@ cdef class ProvidedInstance(Provider): super().__init__() def __repr__(self): - return f'{self.__class__.__name__}(\'{self.__provides}\')' + return f'{self.__class__.__name__}("{self.__provides}")' def __deepcopy__(self, memo): copied = memo.get(id(self)) @@ -4107,7 +4107,7 @@ cdef class AttributeGetter(Provider): super().__init__() def __repr__(self): - return f'{self.__class__.__name__}(\'{self.name}\')' + return f'{self.__class__.__name__}("{self.name}")' def __deepcopy__(self, memo): copied = memo.get(id(self)) @@ -4189,7 +4189,7 @@ cdef class ItemGetter(Provider): super().__init__() def __repr__(self): - return f'{self.__class__.__name__}(\'{self.name}\')' + return f'{self.__class__.__name__}("{self.name}")' def __deepcopy__(self, memo): copied = memo.get(id(self)) diff --git a/tests/performance/test.py b/tests/performance/test.py index fda5d76b..54ddf516 100644 --- a/tests/performance/test.py +++ b/tests/performance/test.py @@ -14,15 +14,15 @@ class Tester(object): self.provider_modules = provider_modules self.tests = [getattr(self, name) for name in dir(self) - if name.startswith('test')] + if name.startswith("test")] self.total_time = 0 self.duration_factor = duration_factor def run(self): """Run all tests for all provider modules.""" for module in self.provider_modules: - print('\n') - print('Running tests for module - "{module}":' + print("\n") + print("Running tests for module - \"{module}\":" .format(module=module.__name__)) gc.disable() @@ -30,13 +30,13 @@ class Tester(object): start_time = time.time() test(module) self.total_time = time.time() - start_time - print('Test "{test}" took - {time}' + print("Test \"{test}\" took - {time}" .format(test=test.__name__, time=self.total_time)) gc.collect() gc.enable() - print('\n') + print("\n") def test_raw_3_kw_injections(self, providers): """Test 3 keyword argument injections.""" @@ -53,7 +53,7 @@ class Tester(object): def __init__(self, a, b, c): pass - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): Test(a=A(), b=B(), c=C()) def test_factory_3_factory_kw_injections(self, providers): @@ -78,7 +78,7 @@ class Tester(object): a=a_factory, b=b_factory, c=c_factory) - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): test_factory() def test_abstract_factory_3_factory_kw_injections(self, providers): @@ -104,7 +104,7 @@ class Tester(object): a=a_factory, b=b_factory, c=c_factory)) - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): test_factory() def test_factory_6_factory_kw_injections_0_context(self, providers): @@ -114,7 +114,7 @@ class Tester(object): pass test_factory = providers.Factory(Test, a=1, b=2, c=3, d=4, e=5, f=6) - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): test_factory() def test_factory_6_factory_kw_injections_1_context(self, providers): @@ -124,7 +124,7 @@ class Tester(object): pass test_factory = providers.Factory(Test, f=6) - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): test_factory(a=1, b=2, c=3, d=4, e=5) def test_factory_6_factory_kw_injections_3_context(self, providers): @@ -134,11 +134,11 @@ class Tester(object): pass test_factory = providers.Factory(Test, a=1, b=2, c=3) - for x in xrange(int(5000000 * self.duration_factor)): + for x in range(int(5000000 * self.duration_factor)): test_factory(d=4, e=5, f=6) -if __name__ == '__main__': +if __name__ == "__main__": tester = Tester( provider_modules=[ dependency_injector.providers, diff --git a/tests/typing/callable.py b/tests/typing/callable.py index 46966f9f..09cdf9bc 100644 --- a/tests/typing/callable.py +++ b/tests/typing/callable.py @@ -16,7 +16,7 @@ class Cat(Animal): # Test 1: to check the return type (class) provider1 = providers.Callable(Cat) -animal1: Animal = provider1(1, 2, 3, b='1', c=2, e=0.0) +animal1: Animal = provider1(1, 2, 3, b="1", c=2, e=0.0) # Test 2: to check the return type (class factory method) provider2 = providers.Callable(Cat.create) @@ -36,17 +36,17 @@ kwargs4: Dict[str, Any] = provider4.kwargs provider5 = providers.Callable(Animal) provided5: providers.ProvidedInstance = provider5.provided attr_getter5: providers.AttributeGetter = provider5.provided.attr -item_getter5: providers.ItemGetter = provider5.provided['item'] +item_getter5: providers.ItemGetter = provider5.provided["item"] method_caller: providers.MethodCaller = provider5.provided.method.call(123, arg=324) # Test 6: to check the DelegatedCallable provider6 = providers.DelegatedCallable(Cat) -animal6: Animal = provider6(1, 2, 3, b='1', c=2, e=0.0) +animal6: Animal = provider6(1, 2, 3, b="1", c=2, e=0.0) # Test 7: to check the AbstractCallable provider7 = providers.AbstractCallable(Animal) provider7.override(providers.Callable(Cat)) -animal7: Animal = provider7(1, 2, 3, b='1', c=2, e=0.0) +animal7: Animal = provider7(1, 2, 3, b="1", c=2, e=0.0) # Test 8: to check the CallableDelegate __init__ provider8 = providers.CallableDelegate(providers.Callable(lambda: None)) @@ -54,8 +54,8 @@ provider8 = providers.CallableDelegate(providers.Callable(lambda: None)) # Test 9: to check the return type with await provider9 = providers.Callable(Cat) async def _async9() -> None: - animal1: Animal = await provider9(1, 2, 3, b='1', c=2, e=0.0) # type: ignore - animal2: Animal = await provider9.async_(1, 2, 3, b='1', c=2, e=0.0) + animal1: Animal = await provider9(1, 2, 3, b="1", c=2, e=0.0) # type: ignore + animal2: Animal = await provider9.async_(1, 2, 3, b="1", c=2, e=0.0) # Test 10: to check the .provides provider10 = providers.Callable(Cat) diff --git a/tests/typing/configuration.py b/tests/typing/configuration.py index 3af454c4..b6005004 100644 --- a/tests/typing/configuration.py +++ b/tests/typing/configuration.py @@ -9,12 +9,12 @@ provider1 = providers.Factory(dict, a=config1.a) # Test 2: to check the from_*() method config2 = providers.Configuration() config2.from_dict({}) -config2.from_ini('config.ini') -config2.from_ini(Path('config.ini')) +config2.from_ini("config.ini") +config2.from_ini(Path("config.ini")) -config2.from_yaml('config.yml') -config2.from_yaml(Path('config.yml')) -config2.from_env('ENV', 'default') +config2.from_yaml("config.yml") +config2.from_yaml(Path("config.yml")) +config2.from_env("ENV", "default") # Test 3: to check as_*() methods config3 = providers.Configuration() diff --git a/tests/typing/declarative_container.py b/tests/typing/declarative_container.py index 51356514..d34aecba 100644 --- a/tests/typing/declarative_container.py +++ b/tests/typing/declarative_container.py @@ -63,4 +63,4 @@ class Container7(containers.DeclarativeContainer): provider = providers.Factory(str) container7 = Container7() -container7.override_providers(provider='new_value') +container7.override_providers(provider="new_value") diff --git a/tests/typing/factory.py b/tests/typing/factory.py index b43081ba..61999e2f 100644 --- a/tests/typing/factory.py +++ b/tests/typing/factory.py @@ -18,7 +18,7 @@ class Cat(Animal): # Test 1: to check the return type (class) provider1 = providers.Factory(Cat) -animal1: Animal = provider1(1, 2, 3, b='1', c=2, e=0.0) +animal1: Animal = provider1(1, 2, 3, b="1", c=2, e=0.0) # Test 2: to check the return type (class factory method) provider2 = providers.Factory(Cat.create) @@ -39,17 +39,17 @@ attributes4: Dict[str, Any] = provider4.attributes provider5 = providers.Factory(Animal) provided5: providers.ProvidedInstance = provider5.provided attr_getter5: providers.AttributeGetter = provider5.provided.attr -item_getter5: providers.ItemGetter = provider5.provided['item'] +item_getter5: providers.ItemGetter = provider5.provided["item"] method_caller5: providers.MethodCaller = provider5.provided.method.call(123, arg=324) # Test 6: to check the DelegatedFactory provider6 = providers.DelegatedFactory(Cat) -animal6: Animal = provider6(1, 2, 3, b='1', c=2, e=0.0) +animal6: Animal = provider6(1, 2, 3, b="1", c=2, e=0.0) # Test 7: to check the AbstractFactory provider7 = providers.AbstractFactory(Animal) provider7.override(providers.Factory(Cat)) -animal7: Animal = provider7(1, 2, 3, b='1', c=2, e=0.0) +animal7: Animal = provider7(1, 2, 3, b="1", c=2, e=0.0) # Test 8: to check the FactoryDelegate __init__ provider8 = providers.FactoryDelegate(providers.Factory(object)) @@ -61,7 +61,7 @@ provider9: providers.FactoryAggregate[str] = providers.FactoryAggregate( ) factory_a_9: providers.Factory[str] = provider9.a factory_b_9: providers.Factory[str] = provider9.b -val9: str = provider9('a') +val9: str = provider9("a") provider9_set_non_string_keys: providers.FactoryAggregate[str] = providers.FactoryAggregate() provider9_set_non_string_keys.set_factories({Cat: providers.Factory(str, "str")}) @@ -83,8 +83,8 @@ animal10: Animal = factory10() # Test 11: to check the return type with await provider11 = providers.Factory(Cat) async def _async11() -> None: - animal1: Animal = await provider11(1, 2, 3, b='1', c=2, e=0.0) # type: ignore - animal2: Animal = await provider11.async_(1, 2, 3, b='1', c=2, e=0.0) + animal1: Animal = await provider11(1, 2, 3, b="1", c=2, e=0.0) # type: ignore + animal2: Animal = await provider11.async_(1, 2, 3, b="1", c=2, e=0.0) # Test 12: to check class type from .provides provider12 = providers.Factory(Cat) diff --git a/tests/typing/list.py b/tests/typing/list.py index 1831eff8..3ceae7cc 100644 --- a/tests/typing/list.py +++ b/tests/typing/list.py @@ -25,7 +25,7 @@ provider3 = providers.List( ) provided3: providers.ProvidedInstance = provider3.provided attr_getter3: providers.AttributeGetter = provider3.provided.attr -item_getter3: providers.ItemGetter = provider3.provided['item'] +item_getter3: providers.ItemGetter = provider3.provided["item"] method_caller3: providers.MethodCaller = provider3.provided.method.call(123, arg=324) # Test 4: to check the return type with await diff --git a/tests/typing/object.py b/tests/typing/object.py index f97ef57b..b099c83b 100644 --- a/tests/typing/object.py +++ b/tests/typing/object.py @@ -11,7 +11,7 @@ var1: int = provider1() provider2 = providers.Object(int) provided2: providers.ProvidedInstance = provider2.provided attr_getter2: providers.AttributeGetter = provider2.provided.attr -item_getter2: providers.ItemGetter = provider2.provided['item'] +item_getter2: providers.ItemGetter = provider2.provided["item"] method_caller2: providers.MethodCaller = provider2.provided.method.call(123, arg=324) # Test 3: to check the return type with await @@ -21,5 +21,5 @@ async def _async3() -> None: var2: int = await provider3.async_() # Test 4: to check class type from provider -provider4 = providers.Object(int('1')) +provider4 = providers.Object(int("1")) provided_provides: Optional[int] = provider4.provides diff --git a/tests/typing/selector.py b/tests/typing/selector.py index 6aa4ca8f..e6d092c5 100644 --- a/tests/typing/selector.py +++ b/tests/typing/selector.py @@ -5,7 +5,7 @@ from dependency_injector import providers # Test 1: to check the return type provider1 = providers.Selector( - lambda: 'a', + lambda: "a", a=providers.Factory(object), b=providers.Factory(object), ) @@ -13,18 +13,18 @@ var1: Any = provider1() # Test 2: to check the provided instance interface provider2 = providers.Selector( - lambda: 'a', + lambda: "a", a=providers.Factory(object), b=providers.Factory(object), ) provided2: providers.ProvidedInstance = provider2.provided attr_getter2: providers.AttributeGetter = provider2.provided.attr -item_getter2: providers.ItemGetter = provider2.provided['item'] +item_getter2: providers.ItemGetter = provider2.provided["item"] method_caller2: providers.MethodCaller = provider2.provided.method.call(123, arg=324) # Test3 to check the getattr provider3 = providers.Selector( - lambda: 'a', + lambda: "a", a=providers.Factory(object), b=providers.Factory(object), ) @@ -32,7 +32,7 @@ attr3: providers.Provider = provider3.a # Test 4: to check the return type with await provider4 = providers.Selector( - lambda: 'a', + lambda: "a", a=providers.Factory(object), b=providers.Factory(object), ) diff --git a/tests/typing/singleton.py b/tests/typing/singleton.py index 11276c6e..b19a43fe 100644 --- a/tests/typing/singleton.py +++ b/tests/typing/singleton.py @@ -18,7 +18,7 @@ class Cat(Animal): # Test 1: to check the return type (class) provider1 = providers.Singleton(Cat) -animal1: Animal = provider1(1, 2, 3, b='1', c=2, e=0.0) +animal1: Animal = provider1(1, 2, 3, b="1", c=2, e=0.0) # Test 2: to check the return type (class factory method) provider2 = providers.Singleton(Cat.create) @@ -39,12 +39,12 @@ attributes4: Dict[str, Any] = provider4.attributes provider5 = providers.Singleton(Animal) provided5: providers.ProvidedInstance = provider5.provided attr_getter5: providers.AttributeGetter = provider5.provided.attr -item_getter5: providers.ItemGetter = provider5.provided['item'] +item_getter5: providers.ItemGetter = provider5.provided["item"] method_caller5: providers.MethodCaller = provider5.provided.method.call(123, arg=324) # Test 6: to check the DelegatedSingleton provider6 = providers.DelegatedSingleton(Cat) -animal6: Animal = provider6(1, 2, 3, b='1', c=2, e=0.0) +animal6: Animal = provider6(1, 2, 3, b="1", c=2, e=0.0) # Test 7: to check the ThreadSafeSingleton provider7: providers.BaseSingleton[Animal] = providers.ThreadSafeSingleton(Cat) @@ -52,20 +52,20 @@ animal7: Animal = provider7() # Test 8: to check the DelegatedThreadSafeSingleton provider8 = providers.DelegatedThreadSafeSingleton(Cat) -animal8: Animal = provider8(1, 2, 3, b='1', c=2, e=0.0) +animal8: Animal = provider8(1, 2, 3, b="1", c=2, e=0.0) # Test 9: to check the ThreadLocalSingleton provider9 = providers.ThreadLocalSingleton(Cat) -animal9: Animal = provider9(1, 2, 3, b='1', c=2, e=0.0) +animal9: Animal = provider9(1, 2, 3, b="1", c=2, e=0.0) # Test 10: to check the DelegatedThreadLocalSingleton provider10 = providers.DelegatedThreadLocalSingleton(Cat) -animal10: Animal = provider10(1, 2, 3, b='1', c=2, e=0.0) +animal10: Animal = provider10(1, 2, 3, b="1", c=2, e=0.0) # Test 11: to check the AbstractSingleton provider11 = providers.AbstractSingleton(Animal) provider11.override(providers.Singleton(Cat)) -animal11: Animal = provider11(1, 2, 3, b='1', c=2, e=0.0) +animal11: Animal = provider11(1, 2, 3, b="1", c=2, e=0.0) # Test 12: to check the SingletonDelegate __init__ provider12 = providers.SingletonDelegate(providers.Singleton(object)) @@ -73,8 +73,8 @@ provider12 = providers.SingletonDelegate(providers.Singleton(object)) # Test 13: to check the return type with await provider13 = providers.Singleton(Cat) async def _async13() -> None: - animal1: Animal = await provider13(1, 2, 3, b='1', c=2, e=0.0) # type: ignore - animal2: Animal = await provider13.async_(1, 2, 3, b='1', c=2, e=0.0) + animal1: Animal = await provider13(1, 2, 3, b="1", c=2, e=0.0) # type: ignore + animal2: Animal = await provider13.async_(1, 2, 3, b="1", c=2, e=0.0) # Test 14: to check class from .provides provider14 = providers.Singleton(Cat) diff --git a/tests/unit/asyncutils.py b/tests/unit/asyncutils.py index ca1b96d2..53cf30cd 100644 --- a/tests/unit/asyncutils.py +++ b/tests/unit/asyncutils.py @@ -18,12 +18,12 @@ def setup_test_loop( loop = loop_factory() try: module = loop.__class__.__module__ - skip_watcher = 'uvloop' in module + skip_watcher = "uvloop" in module except AttributeError: # pragma: no cover # Just in case skip_watcher = True asyncio.set_event_loop(loop) - if sys.platform != 'win32' and not skip_watcher: + if sys.platform != "win32" and not skip_watcher: policy = asyncio.get_event_loop_policy() watcher = asyncio.SafeChildWatcher() # type: ignore watcher.attach_loop(loop) diff --git a/tests/unit/containers/test_declarative_py2_py3.py b/tests/unit/containers/test_declarative_py2_py3.py index f731bd92..f6176893 100644 --- a/tests/unit/containers/test_declarative_py2_py3.py +++ b/tests/unit/containers/test_declarative_py2_py3.py @@ -52,15 +52,15 @@ class DeclarativeContainerTests(unittest.TestCase): self.assertEqual( ContainerA.providers, { - 'p11': ContainerA.p11, - 'p12': ContainerA.p12, + "p11": ContainerA.p11, + "p12": ContainerA.p12, }, ) self.assertEqual( ContainerA2.providers, { - 'p11': p1, - 'p12': p2, + "p11": p1, + "p12": p2, }, ) @@ -95,17 +95,17 @@ class DeclarativeContainerTests(unittest.TestCase): self.assertEqual( ContainerD.dependencies, { - 'p41': ContainerD.p41, - 'p42': ContainerD.p42, + "p41": ContainerD.p41, + "p42": ContainerD.p42, }, ) self.assertEqual( ContainerE.dependencies, { - 'p41': ContainerD.p41, - 'p42': ContainerD.p42, - 'p51': ContainerE.p51, - 'p52': ContainerE.p52, + "p41": ContainerD.p41, + "p42": ContainerD.p42, + "p51": ContainerE.p51, + "p52": ContainerE.p52, }, ) @@ -308,9 +308,9 @@ class DeclarativeContainerTests(unittest.TestCase): self.assertIsNot(_Container1.p11, _Container2.p11) self.assertIsNot(_Container1.p12, _Container2.p12) - self.assertEqual(_Container.p12(), {'p11': 0}) - self.assertEqual(_Container1.p12(), {'p11': 1}) - self.assertEqual(_Container2.p12(), {'p11': 2}) + self.assertEqual(_Container.p12(), {"p11": 0}) + self.assertEqual(_Container1.p12(), {"p11": 1}) + self.assertEqual(_Container2.p12(), {"p11": 2}) self.assertEqual(_Container1.p13(), 11) self.assertEqual(_Container2.p13(), 22) @@ -329,9 +329,9 @@ class DeclarativeContainerTests(unittest.TestCase): new2 = New(p11=1) new3 = New(p11=2) - self.assertEqual(new1.p13(), {'p12': {'p11': 0}}) - self.assertEqual(new2.p13(), {'p12': {'p11': 1}}) - self.assertEqual(new3.p13(), {'p12': {'p11': 2}}) + self.assertEqual(new1.p13(), {"p12": {"p11": 0}}) + self.assertEqual(new2.p13(), {"p12": {"p11": 1}}) + self.assertEqual(new3.p13(), {"p12": {"p11": 2}}) def test_copy_with_replacing_subcontainer_providers(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/374 @@ -339,7 +339,7 @@ class DeclarativeContainerTests(unittest.TestCase): foo = providers.Dependency(instance_of=str) def build_x(): - return X(foo='1') + return X(foo="1") class A(containers.DeclarativeContainer): x = providers.DependenciesContainer(**X.providers) @@ -351,7 +351,7 @@ class DeclarativeContainerTests(unittest.TestCase): b1 = B1() - self.assertEqual(b1.y(), '1') + self.assertEqual(b1.y(), "1") def test_containers_attribute(self): class Container(containers.DeclarativeContainer): @@ -388,17 +388,17 @@ class DeclarativeContainerTests(unittest.TestCase): container = _Container(p1=1) - self.assertEqual(container.p2(), {'p1': 1}) + self.assertEqual(container.p2(), {"p1": 1}) self.assertIs( - container.p2.last_overriding.kwargs['p1'], + container.p2.last_overriding.kwargs["p1"], container.p1, ) self.assertIsNot( - container.p2.last_overriding.kwargs['p1'], + container.p2.last_overriding.kwargs["p1"], _Container.p1, ) self.assertIs( - _Container.p2.last_overriding.kwargs['p1'], + _Container.p2.last_overriding.kwargs["p1"], _Container.p1, ) @@ -419,9 +419,9 @@ class DeclarativeContainerTests(unittest.TestCase): def test_init_with_dependency_delegation(self): # Bug: # https://github.com/ets-labs/python-dependency-injector/issues/235 - A = collections.namedtuple('A', []) - B = collections.namedtuple('B', ['fa']) - C = collections.namedtuple('B', ['a']) + A = collections.namedtuple("A", []) + B = collections.namedtuple("B", ["fa"]) + C = collections.namedtuple("B", ["a"]) class Services(containers.DeclarativeContainer): a = providers.Dependency() @@ -469,7 +469,7 @@ class DeclarativeContainerTests(unittest.TestCase): self.assertIs(Container.container.parent, Container) def test_resolve_provider_name(self): - self.assertEqual(ContainerA.resolve_provider_name(ContainerA.p11), 'p11') + self.assertEqual(ContainerA.resolve_provider_name(ContainerA.p11), "p11") def test_resolve_provider_name_no_provider(self): with self.assertRaises(errors.Error): @@ -483,7 +483,7 @@ class DeclarativeContainerTests(unittest.TestCase): Container.dependency() self.assertEqual( str(context.exception), - 'Dependency "Container.dependency" is not defined', + "Dependency \"Container.dependency\" is not defined", ) def test_child_dependencies_container_parent_name(self): @@ -494,7 +494,7 @@ class DeclarativeContainerTests(unittest.TestCase): Container.dependencies_container.dependency() self.assertEqual( str(context.exception), - 'Dependency "Container.dependencies_container.dependency" is not defined', + "Dependency \"Container.dependencies_container.dependency\" is not defined", ) def test_child_container_parent_name(self): @@ -508,7 +508,7 @@ class DeclarativeContainerTests(unittest.TestCase): Container.child_container.dependency() self.assertEqual( str(context.exception), - 'Dependency "Container.child_container.dependency" is not defined', + "Dependency \"Container.child_container.dependency\" is not defined", ) @@ -529,11 +529,11 @@ class DeclarativeContainerWithCustomStringTests(unittest.TestCase): self.provider = providers.Provider() def test_setattr(self): - setattr(self.container, self.CustomString('test_attr'), self.provider) + setattr(self.container, self.CustomString("test_attr"), self.provider) self.assertIs(self.container.test_attr, self.provider) def test_delattr(self): - setattr(self.container, self.CustomString('test_attr'), self.provider) - delattr(self.container, self.CustomString('test_attr')) + setattr(self.container, self.CustomString("test_attr"), self.provider) + delattr(self.container, self.CustomString("test_attr")) with self.assertRaises(AttributeError): self.container.test_attr diff --git a/tests/unit/containers/test_dynamic_async_resources_py36.py b/tests/unit/containers/test_dynamic_async_resources_py36.py index 12cec831..eaad68b9 100644 --- a/tests/unit/containers/test_dynamic_async_resources_py36.py +++ b/tests/unit/containers/test_dynamic_async_resources_py36.py @@ -6,7 +6,7 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) import sys @@ -46,18 +46,18 @@ class AsyncResourcesTest(AsyncTestCase): class Container(containers.DeclarativeContainer): resource1 = providers.Resource( _resource, - name='r1', + name="r1", delay=0.03, ) resource2 = providers.Resource( _resource, - name='r2', + name="r2", delay=0.02, r1=resource1, ) resource3 = providers.Resource( _resource, - name='r3', + name="r3", delay=0.01, r2=resource2, ) @@ -65,20 +65,20 @@ class AsyncResourcesTest(AsyncTestCase): container = Container() self._run(container.init_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) self.assertEqual(shutdown_resources, []) self._run(container.shutdown_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) self._run(container.init_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) self._run(container.shutdown_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1', 'r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1", "r3", "r2", "r1"]) def test_shutdown_circular_dependencies_breaker(self): async def _resource(name, **_): @@ -87,16 +87,16 @@ class AsyncResourcesTest(AsyncTestCase): class Container(containers.DeclarativeContainer): resource1 = providers.Resource( _resource, - name='r1', + name="r1", ) resource2 = providers.Resource( _resource, - name='r2', + name="r2", r1=resource1, ) resource3 = providers.Resource( _resource, - name='r3', + name="r3", r2=resource2, ) @@ -108,7 +108,7 @@ class AsyncResourcesTest(AsyncTestCase): with self.assertRaises(RuntimeError) as context: self._run(container.shutdown_resources()) - self.assertEqual(str(context.exception), 'Unable to resolve resources shutdown order') + self.assertEqual(str(context.exception), "Unable to resolve resources shutdown order") def test_shutdown_sync_and_async_ordering(self): initialized_resources = [] @@ -127,33 +127,33 @@ class AsyncResourcesTest(AsyncTestCase): class Container(containers.DeclarativeContainer): resource1 = providers.Resource( _sync_resource, - name='r1', + name="r1", ) resource2 = providers.Resource( _sync_resource, - name='r2', + name="r2", r1=resource1, ) resource3 = providers.Resource( _async_resource, - name='r3', + name="r3", r2=resource2, ) container = Container() self._run(container.init_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) self.assertEqual(shutdown_resources, []) self._run(container.shutdown_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) self._run(container.init_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) self._run(container.shutdown_resources()) - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1', 'r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1", "r3", "r2", "r1"]) diff --git a/tests/unit/containers/test_dynamic_py2_py3.py b/tests/unit/containers/test_dynamic_py2_py3.py index 1c722be8..8da4001f 100644 --- a/tests/unit/containers/test_dynamic_py2_py3.py +++ b/tests/unit/containers/test_dynamic_py2_py3.py @@ -28,7 +28,7 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): container = ContainerA() container.a1 = providers.Dependency() container.a2 = providers.DependenciesContainer() - self.assertEqual(container.dependencies, {'a1': container.a1, 'a2': container.a2}) + self.assertEqual(container.dependencies, {"a1": container.a1, "a2": container.a2}) def test_set_get_del_providers(self): p13 = providers.Provider() @@ -212,36 +212,36 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): class Container(containers.DeclarativeContainer): resource1 = providers.Resource( _resource, - name='r1', + name="r1", ) resource2 = providers.Resource( _resource, - name='r2', + name="r2", r1=resource1, ) resource3 = providers.Resource( _resource, - name='r3', + name="r3", r2=resource2, ) container = Container() container.init_resources() - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) self.assertEqual(shutdown_resources, []) container.shutdown_resources() - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) container.init_resources() - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1"]) container.shutdown_resources() - self.assertEqual(initialized_resources, ['r1', 'r2', 'r3', 'r1', 'r2', 'r3']) - self.assertEqual(shutdown_resources, ['r3', 'r2', 'r1', 'r3', 'r2', 'r1']) + self.assertEqual(initialized_resources, ["r1", "r2", "r3", "r1", "r2", "r3"]) + self.assertEqual(shutdown_resources, ["r3", "r2", "r1", "r3", "r2", "r1"]) def test_shutdown_resources_circular_dependencies_breaker(self): def _resource(name, **_): @@ -250,16 +250,16 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): class Container(containers.DeclarativeContainer): resource1 = providers.Resource( _resource, - name='r1', + name="r1", ) resource2 = providers.Resource( _resource, - name='r2', + name="r2", r1=resource1, ) resource3 = providers.Resource( _resource, - name='r3', + name="r3", r2=resource2, ) @@ -271,7 +271,7 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): with self.assertRaises(RuntimeError) as context: container.shutdown_resources() - self.assertEqual(str(context.exception), 'Unable to resolve resources shutdown order') + self.assertEqual(str(context.exception), "Unable to resolve resources shutdown order") def test_init_shutdown_nested_resources(self): def _init1(): @@ -416,16 +416,16 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): with self.assertRaises(errors.Error) as context: container.check_dependencies() - self.assertIn('Container "Container" has undefined dependencies:', str(context.exception)) - self.assertIn('"Container.dependency"', str(context.exception)) - self.assertIn('"Container.dependencies_container.dependency"', str(context.exception)) - self.assertIn('"Container.sub_container.dependency"', str(context.exception)) + self.assertIn("Container \"Container\" has undefined dependencies:", str(context.exception)) + self.assertIn("\"Container.dependency\"", str(context.exception)) + self.assertIn("\"Container.dependencies_container.dependency\"", str(context.exception)) + self.assertIn("\"Container.sub_container.dependency\"", str(context.exception)) def test_check_dependencies_all_defined(self): class Container(containers.DeclarativeContainer): dependency = providers.Dependency() - container = Container(dependency='provided') + container = Container(dependency="provided") result = container.check_dependencies() self.assertIsNone(result) @@ -440,11 +440,11 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): def test_parent_name_declarative_parent(self): container = ContainerA() - self.assertEqual(container.parent_name, 'ContainerA') + self.assertEqual(container.parent_name, "ContainerA") def test_parent_name(self): container = ContainerA() - self.assertEqual(container.parent_name, 'ContainerA') + self.assertEqual(container.parent_name, "ContainerA") def test_parent_name_with_deep_parenting(self): class Container2(containers.DeclarativeContainer): @@ -456,7 +456,7 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): container = providers.Container(Container2) container = Container1() - self.assertEqual(container.container().name.parent_name, 'Container1.container.name') + self.assertEqual(container.container().name.parent_name, "Container1.container.name") def test_parent_name_is_none(self): container = containers.DynamicContainer() @@ -479,7 +479,7 @@ class DeclarativeContainerInstanceTests(unittest.TestCase): def test_resolve_provider_name(self): container = ContainerA() - self.assertEqual(container.resolve_provider_name(container.p11), 'p11') + self.assertEqual(container.resolve_provider_name(container.p11), "p11") def test_resolve_provider_name_no_provider(self): container = ContainerA() @@ -496,11 +496,11 @@ class SelfTests(unittest.TestCase): class Container(containers.DeclarativeContainer): __self__ = providers.Self() foo = providers.Callable(call_bar, __self__) - bar = providers.Object('hello') + bar = providers.Object("hello") container = Container() - self.assertIs(container.foo(), 'hello') + self.assertIs(container.foo(), "hello") def test_self_attribute_implicit(self): class Container(containers.DeclarativeContainer): @@ -531,7 +531,7 @@ class SelfTests(unittest.TestCase): container = Container() self.assertIs(container.__self__, container.foo) - self.assertEqual(set(container.__self__.alt_names), {'foo'}) + self.assertEqual(set(container.__self__.alt_names), {"foo"}) def test_self_attribute_alt_name_explicit_1(self): class Container(containers.DeclarativeContainer): @@ -543,7 +543,7 @@ class SelfTests(unittest.TestCase): self.assertIs(container.__self__, container.foo) self.assertIs(container.__self__, container.bar) - self.assertEqual(set(container.__self__.alt_names), {'foo', 'bar'}) + self.assertEqual(set(container.__self__.alt_names), {"foo", "bar"}) def test_self_attribute_alt_name_explicit_2(self): class Container(containers.DeclarativeContainer): @@ -554,7 +554,7 @@ class SelfTests(unittest.TestCase): self.assertIs(container.__self__, container.foo) self.assertIs(container.__self__, container.bar) - self.assertEqual(set(container.__self__.alt_names), {'foo', 'bar'}) + self.assertEqual(set(container.__self__.alt_names), {"foo", "bar"}) def test_providers_attribute_1(self): class Container(containers.DeclarativeContainer): @@ -595,14 +595,14 @@ class SelfTests(unittest.TestCase): class Container(containers.DeclarativeContainer): __self__ = providers.Self() foo = providers.Callable(call_bar, __self__) - bar = providers.Object('hello') + bar = providers.Object("hello") container1 = Container() container2 = providers.deepcopy(container1) - container1.bar.override('bye') + container1.bar.override("bye") - self.assertIs(container1.foo(), 'bye') - self.assertIs(container2.foo(), 'hello') + self.assertIs(container1.foo(), "bye") + self.assertIs(container2.foo(), "hello") def test_deepcopy_alt_names_1(self): class Container(containers.DeclarativeContainer): @@ -646,7 +646,7 @@ class SelfTests(unittest.TestCase): class SubContainer(containers.DeclarativeContainer): __self__ = providers.Self() foo = providers.Callable(call_bar, __self__) - bar = providers.Object('hello') + bar = providers.Object("hello") class Container(containers.DeclarativeContainer): sub_container = providers.Container(SubContainer) @@ -655,7 +655,7 @@ class SelfTests(unittest.TestCase): container = Container() - self.assertIs(container.baz(), 'hello') + self.assertIs(container.baz(), "hello") def test_with_container_provider_overriding(self): def call_bar(container): @@ -664,16 +664,16 @@ class SelfTests(unittest.TestCase): class SubContainer(containers.DeclarativeContainer): __self__ = providers.Self() foo = providers.Callable(call_bar, __self__) - bar = providers.Object('hello') + bar = providers.Object("hello") class Container(containers.DeclarativeContainer): - sub_container = providers.Container(SubContainer, bar='bye') + sub_container = providers.Container(SubContainer, bar="bye") baz = providers.Callable(lambda value: value, sub_container.foo) container = Container() - self.assertIs(container.baz(), 'bye') + self.assertIs(container.baz(), "bye") def test_with_container_provider_self(self): class SubContainer(containers.DeclarativeContainer): @@ -702,19 +702,19 @@ class DynamicContainerWithCustomStringTests(unittest.TestCase): self.provider = providers.Provider() def test_setattr(self): - setattr(self.container, self.CustomString('test_attr'), self.provider) + setattr(self.container, self.CustomString("test_attr"), self.provider) self.assertIs(self.container.test_attr, self.provider) def test_delattr(self): - setattr(self.container, self.CustomString('test_attr'), self.provider) - delattr(self.container, self.CustomString('test_attr')) + setattr(self.container, self.CustomString("test_attr"), self.provider) + delattr(self.container, self.CustomString("test_attr")) with self.assertRaises(AttributeError): self.container.test_attr def test_set_provider(self): - self.container.set_provider(self.CustomString('test_attr'), self.provider) + self.container.set_provider(self.CustomString("test_attr"), self.provider) self.assertIs(self.container.test_attr, self.provider) def test_set_providers(self): - self.container.set_providers(**{self.CustomString('test_attr'): self.provider}) + self.container.set_providers(**{self.CustomString("test_attr"): self.provider}) self.assertIs(self.container.test_attr, self.provider) diff --git a/tests/unit/containers/test_traversal_py3.py b/tests/unit/containers/test_traversal_py3.py index 593ef650..59b81197 100644 --- a/tests/unit/containers/test_traversal_py3.py +++ b/tests/unit/containers/test_traversal_py3.py @@ -11,11 +11,11 @@ class TraverseProviderTests(unittest.TestCase): dict, foo=providers.Resource( dict, - foo='bar' + foo="bar" ), bar=providers.Resource( dict, - foo='bar' + foo="bar" ) ) @@ -23,8 +23,8 @@ class TraverseProviderTests(unittest.TestCase): all_providers = list(container.traverse()) self.assertIn(container.obj_factory, all_providers) - self.assertIn(container.obj_factory.kwargs['foo'], all_providers) - self.assertIn(container.obj_factory.kwargs['bar'], all_providers) + self.assertIn(container.obj_factory.kwargs["foo"], all_providers) + self.assertIn(container.obj_factory.kwargs["bar"], all_providers) self.assertEqual(len(all_providers), 3) def test_nested_providers_with_filtering(self): @@ -33,19 +33,19 @@ class TraverseProviderTests(unittest.TestCase): dict, foo=providers.Resource( dict, - foo='bar' + foo="bar" ), bar=providers.Resource( dict, - foo='bar' + foo="bar" ) ) container = Container() all_providers = list(container.traverse(types=[providers.Resource])) - self.assertIn(container.obj_factory.kwargs['foo'], all_providers) - self.assertIn(container.obj_factory.kwargs['bar'], all_providers) + self.assertIn(container.obj_factory.kwargs["foo"], all_providers) + self.assertIn(container.obj_factory.kwargs["bar"], all_providers) self.assertEqual(len(all_providers), 2) @@ -57,19 +57,19 @@ class TraverseProviderDeclarativeTests(unittest.TestCase): dict, foo=providers.Resource( dict, - foo='bar' + foo="bar" ), bar=providers.Resource( dict, - foo='bar' + foo="bar" ) ) all_providers = list(Container.traverse()) self.assertIn(Container.obj_factory, all_providers) - self.assertIn(Container.obj_factory.kwargs['foo'], all_providers) - self.assertIn(Container.obj_factory.kwargs['bar'], all_providers) + self.assertIn(Container.obj_factory.kwargs["foo"], all_providers) + self.assertIn(Container.obj_factory.kwargs["bar"], all_providers) self.assertEqual(len(all_providers), 3) def test_nested_providers_with_filtering(self): @@ -78,16 +78,16 @@ class TraverseProviderDeclarativeTests(unittest.TestCase): dict, foo=providers.Resource( dict, - foo='bar' + foo="bar" ), bar=providers.Resource( dict, - foo='bar' + foo="bar" ) ) all_providers = list(Container.traverse(types=[providers.Resource])) - self.assertIn(Container.obj_factory.kwargs['foo'], all_providers) - self.assertIn(Container.obj_factory.kwargs['bar'], all_providers) + self.assertIn(Container.obj_factory.kwargs["foo"], all_providers) + self.assertIn(Container.obj_factory.kwargs["bar"], all_providers) self.assertEqual(len(all_providers), 2) diff --git a/tests/unit/ext/test_aiohttp_py35.py b/tests/unit/ext/test_aiohttp_py35.py index 6f7b0205..42dd7516 100644 --- a/tests/unit/ext/test_aiohttp_py35.py +++ b/tests/unit/ext/test_aiohttp_py35.py @@ -8,22 +8,22 @@ from dependency_injector.ext import aiohttp async def index(_): - return web.Response(text='Hello World!') + return web.Response(text="Hello World!") async def test(_): - return web.Response(text='Test!') + return web.Response(text="Test!") class Test(web.View): async def get(self): - return web.Response(text='Test class-based!') + return web.Response(text="Test class-based!") @web.middleware async def middleware(request, handler): resp = await handler(request) - resp.text = resp.text + ' wink1' + resp.text = resp.text + " wink1" return resp @@ -42,7 +42,7 @@ class ApplicationContainer(containers.DeclarativeContainer): web.Application, middlewares=providers.List( aiohttp.Middleware(middleware), - aiohttp.MiddlewareFactory(middleware_factory, text=' wink2'), + aiohttp.MiddlewareFactory(middleware_factory, text=" wink2"), ), ) @@ -61,33 +61,33 @@ class ApplicationTests(AioHTTPTestCase): app = container.app() app.container = container app.add_routes([ - web.get('/', container.index_view.as_view()), - web.get('/test', container.test_view.as_view(), name='test'), - web.get('/test-class', container.test_class_view.as_view()), + web.get("/", container.index_view.as_view()), + web.get("/test", container.test_view.as_view(), name="test"), + web.get("/test-class", container.test_class_view.as_view()), ]) return app @unittest_run_loop async def test_index(self): - response = await self.client.get('/') + response = await self.client.get("/") self.assertEqual(response.status, 200) - self.assertEqual(await response.text(), 'Hello World! wink2 wink1') + self.assertEqual(await response.text(), "Hello World! wink2 wink1") @unittest_run_loop async def test_test(self): - response = await self.client.get('/test') + response = await self.client.get("/test") self.assertEqual(response.status, 200) - self.assertEqual(await response.text(), 'Test! wink2 wink1') + self.assertEqual(await response.text(), "Test! wink2 wink1") @unittest_run_loop async def test_test_class_based(self): - response = await self.client.get('/test-class') + response = await self.client.get("/test-class") self.assertEqual(response.status, 200) - self.assertEqual(await response.text(), 'Test class-based! wink2 wink1') + self.assertEqual(await response.text(), "Test class-based! wink2 wink1") @unittest_run_loop async def test_endpoints(self): - self.assertEqual(str(self.app.router['test'].url_for()), '/test') + self.assertEqual(str(self.app.router["test"].url_for()), "/test") diff --git a/tests/unit/ext/test_flask_py2_py3.py b/tests/unit/ext/test_flask_py2_py3.py index fcd1c526..60ca5408 100644 --- a/tests/unit/ext/test_flask_py2_py3.py +++ b/tests/unit/ext/test_flask_py2_py3.py @@ -9,16 +9,16 @@ from dependency_injector.ext import flask def index(): - return 'Hello World!' + return "Hello World!" def test(): - return 'Test!' + return "Test!" class Test(MethodView): def get(self): - return 'Test class-based!' + return "Test class-based!" class ApplicationContainer(containers.DeclarativeContainer): @@ -34,9 +34,9 @@ def create_app(): container = ApplicationContainer() app = container.app() app.container = container - app.add_url_rule('/', view_func=container.index_view.as_view()) - app.add_url_rule('/test', 'test-test', view_func=container.test_view.as_view()) - app.add_url_rule('/test-class', view_func=container.test_class_view.as_view('test-class')) + app.add_url_rule("/", view_func=container.index_view.as_view()) + app.add_url_rule("/test", "test-test", view_func=container.test_view.as_view()) + app.add_url_rule("/test-class", view_func=container.test_class_view.as_view("test-class")) return app @@ -44,7 +44,7 @@ class ApplicationTests(unittest.TestCase): def setUp(self): self.app = create_app() - self.app.config['SERVER_NAME'] = 'test-server.com' + self.app.config["SERVER_NAME"] = "test-server.com" self.client = self.app.test_client() self.client.__enter__() @@ -52,25 +52,25 @@ class ApplicationTests(unittest.TestCase): self.client.__exit__(None, None, None) def test_index(self): - response = self.client.get('/') + response = self.client.get("/") self.assertEqual(response.status_code, 200) - self.assertEqual(response.data, b'Hello World!') + self.assertEqual(response.data, b"Hello World!") def test_test(self): - response = self.client.get('/test') + response = self.client.get("/test") self.assertEqual(response.status_code, 200) - self.assertEqual(response.data, b'Test!') + self.assertEqual(response.data, b"Test!") def test_test_class_based(self): - response = self.client.get('/test-class') + response = self.client.get("/test-class") self.assertEqual(response.status_code, 200) - self.assertEqual(response.data, b'Test class-based!') + self.assertEqual(response.data, b"Test class-based!") def test_endpoints(self): with self.app.app_context(): - self.assertEqual(url_for('index'), 'http://test-server.com/') - self.assertEqual(url_for('test-test'), 'http://test-server.com/test') - self.assertEqual(url_for('test-class'), 'http://test-server.com/test-class') + self.assertEqual(url_for("index"), "http://test-server.com/") + self.assertEqual(url_for("test-test"), "http://test-server.com/test") + self.assertEqual(url_for("test-class"), "http://test-server.com/test-class") diff --git a/tests/unit/providers/singleton_common.py b/tests/unit/providers/singleton_common.py index 2c5de2f5..8f0c4a3d 100644 --- a/tests/unit/providers/singleton_common.py +++ b/tests/unit/providers/singleton_common.py @@ -80,48 +80,48 @@ class _BaseSingletonTestCase(object): self.assertIsInstance(instance2, Example) def test_call_with_init_positional_args(self): - provider = self.singleton_cls(Example, 'i1', 'i2') + provider = self.singleton_cls(Example, "i1", "i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIs(instance1, instance2) self.assertIsInstance(instance1, Example) self.assertIsInstance(instance2, Example) def test_call_with_init_keyword_args(self): - provider = self.singleton_cls(Example, init_arg1='i1', init_arg2='i2') + provider = self.singleton_cls(Example, init_arg1="i1", init_arg2="i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIs(instance1, instance2) self.assertIsInstance(instance1, Example) self.assertIsInstance(instance2, Example) def test_call_with_init_positional_and_keyword_args(self): - provider = self.singleton_cls(Example, 'i1', init_arg2='i2') + provider = self.singleton_cls(Example, "i1", init_arg2="i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIs(instance1, instance2) self.assertIsInstance(instance1, Example) @@ -129,16 +129,16 @@ class _BaseSingletonTestCase(object): def test_call_with_attributes(self): provider = self.singleton_cls(Example) - provider.add_attributes(attribute1='a1', attribute2='a2') + provider.add_attributes(attribute1="a1", attribute2="a2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.attribute1, 'a1') - self.assertEqual(instance1.attribute2, 'a2') + self.assertEqual(instance1.attribute1, "a1") + self.assertEqual(instance1.attribute2, "a2") - self.assertEqual(instance2.attribute1, 'a1') - self.assertEqual(instance2.attribute2, 'a2') + self.assertEqual(instance2.attribute1, "a1") + self.assertEqual(instance2.attribute2, "a2") self.assertIs(instance1, instance2) self.assertIsInstance(instance1, Example) @@ -285,8 +285,8 @@ class _BaseSingletonTestCase(object): provider.add_kwargs(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['a1'] - dependent_provider_copy2 = provider_copy.kwargs['a2'] + dependent_provider_copy1 = provider_copy.kwargs["a1"] + dependent_provider_copy2 = provider_copy.kwargs["a2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -304,8 +304,8 @@ class _BaseSingletonTestCase(object): provider.add_attributes(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.attributes['a1'] - dependent_provider_copy2 = provider_copy.attributes['a2'] + dependent_provider_copy1 = provider_copy.attributes["a1"] + dependent_provider_copy2 = provider_copy.attributes["a2"] self.assertNotEqual(provider.attributes, provider_copy.attributes) @@ -342,8 +342,8 @@ class _BaseSingletonTestCase(object): self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider_copy, providers.Singleton) self.assertIs(provider.args[0], sys.stdin) - self.assertIs(provider.kwargs['a2'], sys.stdout) - self.assertIs(provider.attributes['a3'], sys.stderr) + self.assertIs(provider.kwargs["a2"], sys.stdout) + self.assertIs(provider.attributes["a3"], sys.stderr) def test_reset(self): provider = self.singleton_cls(object) @@ -364,12 +364,12 @@ class _BaseSingletonTestCase(object): dependent_instance = dependent_singleton() instance1 = provider() - self.assertIs(instance1['dependency'], dependent_instance) + self.assertIs(instance1["dependency"], dependent_instance) provider.reset() instance2 = provider() - self.assertIs(instance1['dependency'], dependent_instance) + self.assertIs(instance1["dependency"], dependent_instance) self.assertIsNot(instance1, instance2) @@ -396,13 +396,13 @@ class _BaseSingletonTestCase(object): dependent_instance1 = dependent_singleton() instance1 = provider() - self.assertIs(instance1['dependency'], dependent_instance1) + self.assertIs(instance1["dependency"], dependent_instance1) provider.full_reset() dependent_instance2 = dependent_singleton() instance2 = provider() - self.assertIsNot(instance2['dependency'], dependent_instance1) + self.assertIsNot(instance2["dependency"], dependent_instance1) self.assertIsNot(dependent_instance1, dependent_instance2) self.assertIsNot(instance1, instance2) diff --git a/tests/unit/providers/test_async_py36.py b/tests/unit/providers/test_async_py36.py index a784da14..e0603a7b 100644 --- a/tests/unit/providers/test_async_py36.py +++ b/tests/unit/providers/test_async_py36.py @@ -9,7 +9,7 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) import sys @@ -192,7 +192,7 @@ class FactoryTests(AsyncTestCase): def test_injection_error(self): async def init_resource(): - raise Exception('Something went wrong') + raise Exception("Something went wrong") class Container(containers.DeclarativeContainer): resource_with_error = providers.Resource(init_resource) @@ -207,11 +207,11 @@ class FactoryTests(AsyncTestCase): with self.assertRaises(Exception) as context: self._run(container.client()) - self.assertEqual(str(context.exception), 'Something went wrong') + self.assertEqual(str(context.exception), "Something went wrong") def test_injection_runtime_error_async_provides(self): async def create_client(*args, **kwargs): - raise Exception('Something went wrong') + raise Exception("Something went wrong") class Container(containers.DeclarativeContainer): resource = providers.Resource(init_resource, providers.Object(RESOURCE1)) @@ -226,7 +226,7 @@ class FactoryTests(AsyncTestCase): with self.assertRaises(Exception) as context: self._run(container.client()) - self.assertEqual(str(context.exception), 'Something went wrong') + self.assertEqual(str(context.exception), "Something went wrong") def test_injection_call_error_async_provides(self): async def create_client(): # <-- no args defined @@ -302,7 +302,7 @@ class FactoryTests(AsyncTestCase): @attribute_set_error.setter def attribute_set_error(self, value): - raise Exception('Something went wrong') + raise Exception("Something went wrong") class Container(containers.DeclarativeContainer): resource = providers.Resource(init_resource, providers.Object(RESOURCE1)) @@ -318,11 +318,11 @@ class FactoryTests(AsyncTestCase): with self.assertRaises(Exception) as context: self._run(container.client()) - self.assertEqual(str(context.exception), 'Something went wrong') + self.assertEqual(str(context.exception), "Something went wrong") def test_attributes_injection_runtime_error(self): async def init_resource(): - raise Exception('Something went wrong') + raise Exception("Something went wrong") class Container(containers.DeclarativeContainer): resource = providers.Resource(init_resource) @@ -339,7 +339,7 @@ class FactoryTests(AsyncTestCase): with self.assertRaises(Exception) as context: self._run(container.client()) - self.assertEqual(str(context.exception), 'Something went wrong') + self.assertEqual(str(context.exception), "Something went wrong") def test_async_instance_and_sync_attributes_injection(self): class ContainerWithAttributes(containers.DeclarativeContainer): @@ -406,11 +406,11 @@ class FactoryAggregateTests(AsyncTestCase): self.assertTrue(provider.is_async_mode_undefined()) - created_object1 = self._run(provider('object1')) + created_object1 = self._run(provider("object1")) self.assertIs(created_object1, object1) self.assertTrue(provider.is_async_mode_enabled()) - created_object2 = self._run(provider('object2')) + created_object2 = self._run(provider("object2")) self.assertIs(created_object2, object2) @@ -696,7 +696,7 @@ class ProvidedInstanceTests(AsyncTestCase): class TestContainer(containers.DeclarativeContainer): resource = providers.Resource(init_resource, providers.Object(RESOURCE1)) client = providers.Factory(TestClient, resource=resource) - service = providers.Factory(TestService, resource=client.provided['resource']) + service = providers.Factory(TestService, resource=client.provided["resource"]) container = TestContainer() @@ -721,7 +721,7 @@ class ProvidedInstanceTests(AsyncTestCase): container = TestContainer() with self.assertRaises(RuntimeError): - self._run(container.client.provided['item']()) + self._run(container.client.provided["item"]()) def test_provided_item_undefined_item(self): class TestContainer(containers.DeclarativeContainer): @@ -731,7 +731,7 @@ class ProvidedInstanceTests(AsyncTestCase): container = TestContainer() with self.assertRaises(KeyError): - self._run(container.client.provided['item']()) + self._run(container.client.provided["item"]()) def test_provided_method_call(self): class TestClient: @@ -878,15 +878,15 @@ class ListTests(AsyncTestCase): class Container(containers.DeclarativeContainer): resources = providers.List( - providers.Resource(create_resource, 'foo'), - providers.Resource(create_resource, 'bar') + providers.Resource(create_resource, "foo"), + providers.Resource(create_resource, "bar") ) container = Container() resources = self._run(container.resources()) - self.assertEqual(resources[0], 'foo') - self.assertEqual(resources[1], 'bar') + self.assertEqual(resources[0], "foo") + self.assertEqual(resources[1], "bar") class DictTests(AsyncTestCase): @@ -898,15 +898,15 @@ class DictTests(AsyncTestCase): class Container(containers.DeclarativeContainer): resources = providers.Dict( - foo=providers.Resource(create_resource, 'foo'), - bar=providers.Resource(create_resource, 'bar') + foo=providers.Resource(create_resource, "foo"), + bar=providers.Resource(create_resource, "bar") ) container = Container() resources = self._run(container.resources()) - self.assertEqual(resources['foo'], 'foo') - self.assertEqual(resources['bar'], 'bar') + self.assertEqual(resources["foo"], "foo") + self.assertEqual(resources["bar"], "bar") class OverrideTests(AsyncTestCase): @@ -1097,10 +1097,10 @@ class AsyncProvidersWithAsyncDependenciesTests(AsyncTestCase): def test_injections(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/368 async def async_db_provider(): - return {'db': 'ok'} + return {"db": "ok"} async def async_service(db=None): - return {'service': 'ok', 'db': db} + return {"service": "ok", "db": db} class Container(containers.DeclarativeContainer): @@ -1110,7 +1110,7 @@ class AsyncProvidersWithAsyncDependenciesTests(AsyncTestCase): container = Container() service = self._run(container.service()) - self.assertEqual(service, {'service': 'ok', 'db': {'db': 'ok'}}) + self.assertEqual(service, {"service": "ok", "db": {"db": "ok"}}) class AsyncProviderWithAwaitableObjectTests(AsyncTestCase): @@ -1118,7 +1118,7 @@ class AsyncProviderWithAwaitableObjectTests(AsyncTestCase): def test(self): class SomeResource: def __await__(self): - raise RuntimeError('Should never happen') + raise RuntimeError("Should never happen") async def init_resource(): pool = SomeResource() @@ -1148,7 +1148,7 @@ class AsyncProviderWithAwaitableObjectTests(AsyncTestCase): def test_without_init_resources(self): class SomeResource: def __await__(self): - raise RuntimeError('Should never happen') + raise RuntimeError("Should never happen") async def init_resource(): pool = SomeResource() diff --git a/tests/unit/providers/test_base_py2_py3.py b/tests/unit/providers/test_base_py2_py3.py index 290d328e..b93f7f6b 100644 --- a/tests/unit/providers/test_base_py2_py3.py +++ b/tests/unit/providers/test_base_py2_py3.py @@ -23,7 +23,7 @@ class ProviderTests(unittest.TestCase): def test_delegate(self): with warnings.catch_warnings(): - warnings.simplefilter('ignore') + warnings.simplefilter("ignore") delegate1 = self.provider.delegate() delegate2 = self.provider.delegate() @@ -143,8 +143,8 @@ class ProviderTests(unittest.TestCase): def test_repr(self): self.assertEqual(repr(self.provider), - ''.format(hex(id(self.provider)))) + "".format(hex(id(self.provider)))) class ObjectProviderTests(unittest.TestCase): @@ -225,8 +225,8 @@ class ObjectProviderTests(unittest.TestCase): some_object = object() provider = providers.Object(some_object) self.assertEqual(repr(provider), - ''.format( + "".format( repr(some_object), hex(id(provider)))) @@ -248,8 +248,8 @@ class SelfProviderTests(unittest.TestCase): def test_set_alt_names(self): provider = providers.Self() - provider.set_alt_names({'foo', 'bar', 'baz'}) - self.assertEqual(set(provider.alt_names), {'foo', 'bar', 'baz'}) + provider.set_alt_names({"foo", "bar", "baz"}) + self.assertEqual(set(provider.alt_names), {"foo", "bar", "baz"}) def test_deepcopy(self): provider = providers.Self() @@ -287,8 +287,8 @@ class SelfProviderTests(unittest.TestCase): container = containers.DeclarativeContainer() provider = providers.Self(container) self.assertEqual(repr(provider), - ''.format( + "".format( repr(container), hex(id(provider)))) @@ -324,8 +324,8 @@ class DelegateTests(unittest.TestCase): def test_repr(self): self.assertEqual(repr(self.delegate), - ''.format( + "".format( repr(self.delegated), hex(id(self.delegate)))) @@ -375,22 +375,22 @@ class DependencyTests(unittest.TestCase): self.assertIsInstance(self.provider.provided, providers.ProvidedInstance) def test_default(self): - provider = providers.Dependency(instance_of=dict, default={'foo': 'bar'}) - self.assertEqual(provider(), {'foo': 'bar'}) + provider = providers.Dependency(instance_of=dict, default={"foo": "bar"}) + self.assertEqual(provider(), {"foo": "bar"}) def test_default_attribute(self): - provider = providers.Dependency(instance_of=dict, default={'foo': 'bar'}) - self.assertEqual(provider.default(), {'foo': 'bar'}) + provider = providers.Dependency(instance_of=dict, default={"foo": "bar"}) + self.assertEqual(provider.default(), {"foo": "bar"}) def test_default_provider(self): - provider = providers.Dependency(instance_of=dict, default=providers.Factory(dict, foo='bar')) - self.assertEqual(provider.default(), {'foo': 'bar'}) + provider = providers.Dependency(instance_of=dict, default=providers.Factory(dict, foo="bar")) + self.assertEqual(provider.default(), {"foo": "bar"}) def test_default_attribute_provider(self): - default = providers.Factory(dict, foo='bar') + default = providers.Factory(dict, foo="bar") provider = providers.Dependency(instance_of=dict, default=default) - self.assertEqual(provider.default(), {'foo': 'bar'}) + self.assertEqual(provider.default(), {"foo": "bar"}) self.assertIs(provider.default, default) def test_is_defined(self): @@ -399,11 +399,11 @@ class DependencyTests(unittest.TestCase): def test_is_defined_when_overridden(self): provider = providers.Dependency() - provider.override('value') + provider.override("value") self.assertTrue(provider.is_defined) def test_is_defined_with_default(self): - provider = providers.Dependency(default='value') + provider = providers.Dependency(default="value") self.assertTrue(provider.is_defined) def test_call_overridden(self): @@ -417,7 +417,7 @@ class DependencyTests(unittest.TestCase): def test_call_undefined(self): with self.assertRaises(errors.Error) as context: self.provider() - self.assertEqual(str(context.exception), 'Dependency is not defined') + self.assertEqual(str(context.exception), "Dependency is not defined") def test_call_undefined_error_message_with_container_instance_parent(self): class UserService: @@ -437,7 +437,7 @@ class DependencyTests(unittest.TestCase): with self.assertRaises(errors.Error) as context: container.user_service() - self.assertEqual(str(context.exception), 'Dependency "Container.database" is not defined') + self.assertEqual(str(context.exception), "Dependency \"Container.database\" is not defined") def test_call_undefined_error_message_with_container_provider_parent_deep(self): class Database: @@ -473,7 +473,7 @@ class DependencyTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Dependency "Container.services.gateways.database_client" is not defined', + "Dependency \"Container.services.gateways.database_client\" is not defined", ) def test_call_undefined_error_message_with_dependenciescontainer_provider_parent(self): @@ -496,7 +496,7 @@ class DependencyTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Dependency "Services.gateways.database_client" is not defined', + "Dependency \"Services.gateways.database_client\" is not defined", ) def test_assign_parent(self): @@ -511,13 +511,13 @@ class DependencyTests(unittest.TestCase): container = containers.DynamicContainer() provider = providers.Dependency() container.name = provider - self.assertEqual(provider.parent_name, 'name') + self.assertEqual(provider.parent_name, "name") def test_parent_name_with_deep_parenting(self): provider = providers.Dependency() container = providers.DependenciesContainer(name=provider) _ = providers.DependenciesContainer(container=container) - self.assertEqual(provider.parent_name, 'container.name') + self.assertEqual(provider.parent_name, "container.name") def test_parent_name_is_none(self): provider = providers.DependenciesContainer() @@ -541,18 +541,18 @@ class DependencyTests(unittest.TestCase): default = providers.Configuration() provider = providers.Dependency(default=default) - provider.from_dict({'foo': 'bar'}) + provider.from_dict({"foo": "bar"}) - self.assertEqual(default(), {'foo': 'bar'}) + self.assertEqual(default(), {"foo": "bar"}) def test_forward_attr_to_overriding(self): overriding = providers.Configuration() provider = providers.Dependency() provider.override(overriding) - provider.from_dict({'foo': 'bar'}) + provider.from_dict({"foo": "bar"}) - self.assertEqual(overriding(), {'foo': 'bar'}) + self.assertEqual(overriding(), {"foo": "bar"}) def test_forward_attr_to_none(self): provider = providers.Dependency() @@ -592,7 +592,7 @@ class DependencyTests(unittest.TestCase): self.assertIsInstance(overriding_provider_copy, providers.Provider) def test_deep_copy_default_object(self): - default = {'foo': 'bar'} + default = {"foo": "bar"} provider = providers.Dependency(dict, default=default) provider_copy = providers.deepcopy(provider) @@ -607,12 +607,12 @@ class DependencyTests(unittest.TestCase): provider_copy = providers.deepcopy(provider) - self.assertEqual(provider_copy(), {'foo': bar}) - self.assertEqual(provider_copy.default(), {'foo': bar}) - self.assertIs(provider_copy()['foo'], bar) + self.assertEqual(provider_copy(), {"foo": bar}) + self.assertEqual(provider_copy.default(), {"foo": bar}) + self.assertIs(provider_copy()["foo"], bar) def test_with_container_default_object(self): - default = {'foo': 'bar'} + default = {"foo": "bar"} class Container(containers.DeclarativeContainer): provider = providers.Dependency(dict, default=default) @@ -630,9 +630,9 @@ class DependencyTests(unittest.TestCase): container = Container() - self.assertEqual(container.provider(), {'foo': bar}) - self.assertEqual(container.provider.default(), {'foo': bar}) - self.assertIs(container.provider()['foo'], bar) + self.assertEqual(container.provider(), {"foo": bar}) + self.assertEqual(container.provider.default(), {"foo": bar}) + self.assertIs(container.provider()["foo"], bar) def test_with_container_default_provider_with_overriding(self): bar = object() @@ -643,14 +643,14 @@ class DependencyTests(unittest.TestCase): container = Container(provider=providers.Factory(dict, foo=providers.Object(baz))) - self.assertEqual(container.provider(), {'foo': baz}) - self.assertEqual(container.provider.default(), {'foo': bar}) - self.assertIs(container.provider()['foo'], baz) + self.assertEqual(container.provider(), {"foo": baz}) + self.assertEqual(container.provider.default(), {"foo": bar}) + self.assertIs(container.provider()["foo"], baz) def test_repr(self): self.assertEqual(repr(self.provider), - ''.format( + "".format( repr(list), hex(id(self.provider)))) @@ -661,8 +661,8 @@ class DependencyTests(unittest.TestCase): container = Container() self.assertEqual(repr(container.dependency), - ''.format( + "".format( repr(int), hex(id(container.dependency)))) @@ -687,7 +687,7 @@ class DependenciesContainerTests(unittest.TestCase): self.container = self.Container() def test_getattr(self): - has_dependency = hasattr(self.provider, 'dependency') + has_dependency = hasattr(self.provider, "dependency") dependency = self.provider.dependency self.assertIsInstance(dependency, providers.Dependency) @@ -706,8 +706,8 @@ class DependenciesContainerTests(unittest.TestCase): def test_providers(self): dependency1 = self.provider.dependency1 dependency2 = self.provider.dependency2 - self.assertEqual(self.provider.providers, {'dependency1': dependency1, - 'dependency2': dependency2}) + self.assertEqual(self.provider.providers, {"dependency1": dependency1, + "dependency2": dependency2}) def test_override(self): dependency = self.provider.dependency @@ -744,13 +744,13 @@ class DependenciesContainerTests(unittest.TestCase): container = containers.DynamicContainer() provider = providers.DependenciesContainer() container.name = provider - self.assertEqual(provider.parent_name, 'name') + self.assertEqual(provider.parent_name, "name") def test_parent_name_with_deep_parenting(self): provider = providers.DependenciesContainer() container = providers.DependenciesContainer(name=provider) _ = providers.DependenciesContainer(container=container) - self.assertEqual(provider.parent_name, 'container.name') + self.assertEqual(provider.parent_name, "container.name") def test_parent_name_is_none(self): provider = providers.DependenciesContainer() @@ -783,7 +783,7 @@ class DependenciesContainerTests(unittest.TestCase): def test_resolve_provider_name(self): container = providers.DependenciesContainer() - self.assertEqual(container.resolve_provider_name(container.name), 'name') + self.assertEqual(container.resolve_provider_name(container.name), "name") def test_resolve_provider_name_no_provider(self): container = providers.DependenciesContainer() diff --git a/tests/unit/providers/test_callables_py2_py3.py b/tests/unit/providers/test_callables_py2_py3.py index 112f5d7d..9b42294a 100644 --- a/tests/unit/providers/test_callables_py2_py3.py +++ b/tests/unit/providers/test_callables_py2_py3.py @@ -154,8 +154,8 @@ class CallableTests(unittest.TestCase): provider.add_kwargs(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['a1'] - dependent_provider_copy2 = provider_copy.kwargs['a2'] + dependent_provider_copy1 = provider_copy.kwargs["a1"] + dependent_provider_copy2 = provider_copy.kwargs["a2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -193,14 +193,14 @@ class CallableTests(unittest.TestCase): self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider_copy, providers.Callable) self.assertIs(provider.args[0], sys.stdin) - self.assertIs(provider.kwargs['a2'], sys.stdout) + self.assertIs(provider.kwargs["a2"], sys.stdout) def test_repr(self): provider = providers.Callable(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) @@ -223,8 +223,8 @@ class DelegatedCallableTests(unittest.TestCase): provider = providers.DelegatedCallable(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) @@ -275,8 +275,8 @@ class AbstractCallableTests(unittest.TestCase): provider = providers.AbstractCallable(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) diff --git a/tests/unit/providers/test_configuration_py2_py3.py b/tests/unit/providers/test_configuration_py2_py3.py index 303f5a3d..2bec4d24 100644 --- a/tests/unit/providers/test_configuration_py2_py3.py +++ b/tests/unit/providers/test_configuration_py2_py3.py @@ -23,24 +23,24 @@ except ImportError: class ConfigTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") def tearDown(self): del self.config def test_init_optional(self): provider = providers.Configuration() - provider.set_name('myconfig') - provider.set_default({'foo': 'bar'}) + provider.set_name("myconfig") + provider.set_default({"foo": "bar"}) provider.set_strict(True) - self.assertEqual(provider.get_name(), 'myconfig') - self.assertEqual(provider.get_default(), {'foo': 'bar'}) + self.assertEqual(provider.get_name(), "myconfig") + self.assertEqual(provider.get_default(), {"foo": "bar"}) self.assertTrue(provider.get_strict()) def test_set_name_returns_self(self): provider = providers.Configuration() - self.assertIs(provider.set_name('myconfig'), provider) + self.assertIs(provider.set_name("myconfig"), provider) def test_set_default_returns_self(self): provider = providers.Configuration() @@ -52,7 +52,7 @@ class ConfigTests(unittest.TestCase): def test_default_name(self): config = providers.Configuration() - self.assertEqual(config.get_name(), 'config') + self.assertEqual(config.get_name(), "config") def test_providers_are_providers(self): self.assertTrue(providers.is_provider(self.config.a)) @@ -73,7 +73,7 @@ class ConfigTests(unittest.TestCase): self.assertIs(self.config.a.b.d, self.config.a.b.d) def test_get_name(self): - self.assertEqual(self.config.a.b.c.get_name(), 'config.a.b.c') + self.assertEqual(self.config.a.b.c.get_name(), "config.a.b.c") def test_providers_value_setting(self): a = self.config.a @@ -81,29 +81,29 @@ class ConfigTests(unittest.TestCase): abc = self.config.a.b.c abd = self.config.a.b.d - self.config.update({'a': {'b': {'c': 1, 'd': 2}}}) + self.config.update({"a": {"b": {"c": 1, "d": 2}}}) - self.assertEqual(a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(ab(), {'c': 1, 'd': 2}) + self.assertEqual(a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(ab(), {"c": 1, "d": 2}) self.assertEqual(abc(), 1) self.assertEqual(abd(), 2) def test_providers_with_already_set_value(self): - self.config.update({'a': {'b': {'c': 1, 'd': 2}}}) + self.config.update({"a": {"b": {"c": 1, "d": 2}}}) a = self.config.a ab = self.config.a.b abc = self.config.a.b.c abd = self.config.a.b.d - self.assertEqual(a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(ab(), {'c': 1, 'd': 2}) + self.assertEqual(a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(ab(), {"c": 1, "d": 2}) self.assertEqual(abc(), 1) self.assertEqual(abd(), 2) def test_as_int(self): value_provider = providers.Callable(lambda value: value, self.config.test.as_int()) - self.config.from_dict({'test': '123'}) + self.config.from_dict({"test": "123"}) value = value_provider() @@ -111,7 +111,7 @@ class ConfigTests(unittest.TestCase): def test_as_float(self): value_provider = providers.Callable(lambda value: value, self.config.test.as_float()) - self.config.from_dict({'test': '123.123'}) + self.config.from_dict({"test": "123.123"}) value = value_provider() @@ -122,19 +122,19 @@ class ConfigTests(unittest.TestCase): lambda value: value, self.config.test.as_(decimal.Decimal), ) - self.config.from_dict({'test': '123.123'}) + self.config.from_dict({"test": "123.123"}) value = value_provider() - self.assertEqual(value, decimal.Decimal('123.123')) + self.assertEqual(value, decimal.Decimal("123.123")) - @unittest.skipIf(sys.version_info[:2] == (2, 7), 'Python 2.7 does not support this assert') + @unittest.skipIf(sys.version_info[:2] == (2, 7), "Python 2.7 does not support this assert") def test_required(self): provider = providers.Callable( lambda value: value, self.config.a.required(), ) - with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'): + with self.assertRaisesRegex(errors.Error, "Undefined configuration option \"config.a\""): provider() def test_required_defined_none(self): @@ -142,7 +142,7 @@ class ConfigTests(unittest.TestCase): lambda value: value, self.config.a.required(), ) - self.config.from_dict({'a': None}) + self.config.from_dict({"a": None}) self.assertIsNone(provider()) def test_required_no_side_effect(self): @@ -158,9 +158,9 @@ class ConfigTests(unittest.TestCase): self.config.float_test.required().as_float(), self.config._as_test.required().as_(decimal.Decimal), ) - self.config.from_dict({'int_test': '1', 'float_test': '2.0', '_as_test': '3.0'}) + self.config.from_dict({"int_test": "1", "float_test": "2.0", "_as_test": "3.0"}) - self.assertEqual(provider(), [1, 2.0, decimal.Decimal('3.0')]) + self.assertEqual(provider(), [1, 2.0, decimal.Decimal("3.0")]) def test_providers_value_override(self): a = self.config.a @@ -168,95 +168,95 @@ class ConfigTests(unittest.TestCase): abc = self.config.a.b.c abd = self.config.a.b.d - self.config.override({'a': {'b': {'c': 1, 'd': 2}}}) + self.config.override({"a": {"b": {"c": 1, "d": 2}}}) - self.assertEqual(a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(ab(), {'c': 1, 'd': 2}) + self.assertEqual(a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(ab(), {"c": 1, "d": 2}) self.assertEqual(abc(), 1) self.assertEqual(abd(), 2) def test_configuration_option_override_and_reset_override(self): # Bug: https://github.com/ets-labs/python-dependency-injector/issues/319 - self.config.from_dict({'a': {'b': {'c': 1}}}) + self.config.from_dict({"a": {"b": {"c": 1}}}) self.assertEqual(self.config.a.b.c(), 1) - with self.config.set('a.b.c', 'xxx'): - self.assertEqual(self.config.a.b.c(), 'xxx') + with self.config.set("a.b.c", "xxx"): + self.assertEqual(self.config.a.b.c(), "xxx") self.assertEqual(self.config.a.b.c(), 1) - with self.config.a.b.c.override('yyy'): - self.assertEqual(self.config.a.b.c(), 'yyy') + with self.config.a.b.c.override("yyy"): + self.assertEqual(self.config.a.b.c(), "yyy") self.assertEqual(self.config.a.b.c(), 1) def test_providers_with_already_overridden_value(self): - self.config.override({'a': {'b': {'c': 1, 'd': 2}}}) + self.config.override({"a": {"b": {"c": 1, "d": 2}}}) a = self.config.a ab = self.config.a.b abc = self.config.a.b.c abd = self.config.a.b.d - self.assertEqual(a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(ab(), {'c': 1, 'd': 2}) + self.assertEqual(a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(ab(), {"c": 1, "d": 2}) self.assertEqual(abc(), 1) self.assertEqual(abd(), 2) def test_providers_with_default_value(self): self.config = providers.Configuration( - name='config', default={'a': {'b': {'c': 1, 'd': 2}}}) + name="config", default={"a": {"b": {"c": 1, "d": 2}}}) a = self.config.a ab = self.config.a.b abc = self.config.a.b.c abd = self.config.a.b.d - self.assertEqual(a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(ab(), {'c': 1, 'd': 2}) + self.assertEqual(a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(ab(), {"c": 1, "d": 2}) self.assertEqual(abc(), 1) self.assertEqual(abd(), 2) def test_providers_with_default_value_overriding(self): self.config = providers.Configuration( - name='config', default={'a': {'b': {'c': 1, 'd': 2}}}) + name="config", default={"a": {"b": {"c": 1, "d": 2}}}) - self.assertEqual(self.config.a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(self.config.a.b(), {'c': 1, 'd': 2}) + self.assertEqual(self.config.a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(self.config.a.b(), {"c": 1, "d": 2}) self.assertEqual(self.config.a.b.c(), 1) self.assertEqual(self.config.a.b.d(), 2) - self.config.override({'a': {'b': {'c': 3, 'd': 4}}}) - self.assertEqual(self.config.a(), {'b': {'c': 3, 'd': 4}}) - self.assertEqual(self.config.a.b(), {'c': 3, 'd': 4}) + self.config.override({"a": {"b": {"c": 3, "d": 4}}}) + self.assertEqual(self.config.a(), {"b": {"c": 3, "d": 4}}) + self.assertEqual(self.config.a.b(), {"c": 3, "d": 4}) self.assertEqual(self.config.a.b.c(), 3) self.assertEqual(self.config.a.b.d(), 4) self.config.reset_override() - self.assertEqual(self.config.a(), {'b': {'c': 1, 'd': 2}}) - self.assertEqual(self.config.a.b(), {'c': 1, 'd': 2}) + self.assertEqual(self.config.a(), {"b": {"c": 1, "d": 2}}) + self.assertEqual(self.config.a.b(), {"c": 1, "d": 2}) self.assertEqual(self.config.a.b.c(), 1) self.assertEqual(self.config.a.b.d(), 2) def test_value_of_undefined_option(self): self.assertIsNone(self.config.a()) - @unittest.skipIf(sys.version_info[:2] == (2, 7), 'Python 2.7 does not support this assert') + @unittest.skipIf(sys.version_info[:2] == (2, 7), "Python 2.7 does not support this assert") def test_value_of_undefined_option_in_strict_mode(self): self.config = providers.Configuration(strict=True) - with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'): + with self.assertRaisesRegex(errors.Error, "Undefined configuration option \"config.a\""): self.config.a() - @unittest.skipIf(sys.version_info[:2] == (2, 7), 'Python 2.7 does not support this assert') + @unittest.skipIf(sys.version_info[:2] == (2, 7), "Python 2.7 does not support this assert") def test_value_of_undefined_option_with_root_none_in_strict_mode(self): self.config = providers.Configuration(strict=True) self.config.override(None) - with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'): + with self.assertRaisesRegex(errors.Error, "Undefined configuration option \"config.a\""): self.config.a() def test_value_of_defined_none_option_in_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.from_dict({'a': None}) + self.config.from_dict({"a": None}) self.assertIsNone(self.config.a()) def test_getting_of_special_attributes(self): @@ -275,10 +275,10 @@ class ConfigTests(unittest.TestCase): container = Container() with container.config as cfg: - cfg.override({'foo': 'foo', 'bar': 'bar'}) + cfg.override({"foo": "foo", "bar": "bar"}) - self.assertEqual(container.config(), {'foo': 'foo', 'bar': 'bar'}) - self.assertEqual(cfg(), {'foo': 'foo', 'bar': 'bar'}) + self.assertEqual(container.config(), {"foo": "foo", "bar": "bar"}) + self.assertEqual(cfg(), {"foo": "foo", "bar": "bar"}) self.assertIs(container.config, cfg) def test_option_context_manager_alias(self): @@ -288,11 +288,11 @@ class ConfigTests(unittest.TestCase): container = Container() with container.config.option as opt: - opt.override({'foo': 'foo', 'bar': 'bar'}) + opt.override({"foo": "foo", "bar": "bar"}) - self.assertEqual(container.config(), {'option': {'foo': 'foo', 'bar': 'bar'}}) - self.assertEqual(container.config.option(), {'foo': 'foo', 'bar': 'bar'}) - self.assertEqual(opt(), {'foo': 'foo', 'bar': 'bar'}) + self.assertEqual(container.config(), {"option": {"foo": "foo", "bar": "bar"}}) + self.assertEqual(container.config.option(), {"foo": "foo", "bar": "bar"}) + self.assertEqual(opt(), {"foo": "foo", "bar": "bar"}) self.assertIs(container.config.option, opt) def test_missing_key(self): @@ -303,15 +303,15 @@ class ConfigTests(unittest.TestCase): self.assertIsNone(value) def test_deepcopy(self): - provider = providers.Configuration('config') + provider = providers.Configuration("config") provider_copy = providers.deepcopy(provider) self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider, providers.Configuration) def test_deepcopy_from_memo(self): - provider = providers.Configuration('config') - provider_copy_memo = providers.Configuration('config') + provider = providers.Configuration("config") + provider_copy_memo = providers.Configuration("config") provider_copy = providers.deepcopy( provider, memo={id(provider): provider_copy_memo}) @@ -319,7 +319,7 @@ class ConfigTests(unittest.TestCase): self.assertIs(provider_copy, provider_copy_memo) def test_deepcopy_overridden(self): - provider = providers.Configuration('config') + provider = providers.Configuration("config") object_provider = providers.Object(object()) provider.override(object_provider) @@ -335,86 +335,86 @@ class ConfigTests(unittest.TestCase): def test_repr(self): self.assertEqual(repr(self.config), - ''.format( - repr('config'), + "".format( + repr("config"), hex(id(self.config)))) def test_repr_child(self): self.assertEqual(repr(self.config.a.b.c), - ''.format( - repr('config.a.b.c'), + "".format( + repr("config.a.b.c"), hex(id(self.config.a.b.c)))) class ConfigLinkingTests(unittest.TestCase): class TestCore(containers.DeclarativeContainer): - config = providers.Configuration('core') + config = providers.Configuration("core") value_getter = providers.Callable(lambda _: _, config.value) class TestServices(containers.DeclarativeContainer): - config = providers.Configuration('services') + config = providers.Configuration("services") value_getter = providers.Callable(lambda _: _, config.value) def test(self): - root_config = providers.Configuration('main') + root_config = providers.Configuration("main") core = self.TestCore(config=root_config.core) services = self.TestServices(config=root_config.services) root_config.override( { - 'core': { - 'value': 'core', + "core": { + "value": "core", }, - 'services': { - 'value': 'services', + "services": { + "value": "services", }, }, ) - self.assertEqual(core.config(), {'value': 'core'}) - self.assertEqual(core.config.value(), 'core') - self.assertEqual(core.value_getter(), 'core') + self.assertEqual(core.config(), {"value": "core"}) + self.assertEqual(core.config.value(), "core") + self.assertEqual(core.value_getter(), "core") - self.assertEqual(services.config(), {'value': 'services'}) - self.assertEqual(services.config.value(), 'services') - self.assertEqual(services.value_getter(), 'services') + self.assertEqual(services.config(), {"value": "services"}) + self.assertEqual(services.config.value(), "services") + self.assertEqual(services.value_getter(), "services") def test_double_override(self): - root_config = providers.Configuration('main') + root_config = providers.Configuration("main") core = self.TestCore(config=root_config.core) services = self.TestServices(config=root_config.services) root_config.override( { - 'core': { - 'value': 'core1', + "core": { + "value": "core1", }, - 'services': { - 'value': 'services1', + "services": { + "value": "services1", }, }, ) root_config.override( { - 'core': { - 'value': 'core2', + "core": { + "value": "core2", }, - 'services': { - 'value': 'services2', + "services": { + "value": "services2", }, }, ) - self.assertEqual(core.config(), {'value': 'core2'}) - self.assertEqual(core.config.value(), 'core2') - self.assertEqual(core.value_getter(), 'core2') + self.assertEqual(core.config(), {"value": "core2"}) + self.assertEqual(core.config.value(), "core2") + self.assertEqual(core.value_getter(), "core2") - self.assertEqual(services.config(), {'value': 'services2'}) - self.assertEqual(services.config.value(), 'services2') - self.assertEqual(services.value_getter(), 'services2') + self.assertEqual(services.config(), {"value": "services2"}) + self.assertEqual(services.config.value(), "services2") + self.assertEqual(services.value_getter(), "services2") def test_reset_overriding_cache(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/428 @@ -435,13 +435,13 @@ class ConfigLinkingTests(unittest.TestCase): container = Application() - container.config.set('greeting', 'Hello World') - self.assertEqual(container.greetings(), 'Hello World') - self.assertEqual(container.core.greetings(), 'Hello World') + container.config.set("greeting", "Hello World") + self.assertEqual(container.greetings(), "Hello World") + self.assertEqual(container.core.greetings(), "Hello World") - container.config.set('greeting', 'Hello Bob') - self.assertEqual(container.greetings(), 'Hello Bob') - self.assertEqual(container.core.greetings(), 'Hello Bob') + container.config.set("greeting", "Hello Bob") + self.assertEqual(container.greetings(), "Hello Bob") + self.assertEqual(container.core.greetings(), "Hello Bob") def test_reset_overriding_cache_for_option(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/428 @@ -462,38 +462,38 @@ class ConfigLinkingTests(unittest.TestCase): container = Application() - container.config.set('option.greeting', 'Hello World') - self.assertEqual(container.greetings(), 'Hello World') - self.assertEqual(container.core.greetings(), 'Hello World') + container.config.set("option.greeting", "Hello World") + self.assertEqual(container.greetings(), "Hello World") + self.assertEqual(container.core.greetings(), "Hello World") - container.config.set('option.greeting', 'Hello Bob') - self.assertEqual(container.greetings(), 'Hello Bob') - self.assertEqual(container.core.greetings(), 'Hello Bob') + container.config.set("option.greeting", "Hello Bob") + self.assertEqual(container.greetings(), "Hello Bob") + self.assertEqual(container.core.greetings(), "Hello Bob") class ConfigFromIniTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") _, self.config_file_1 = tempfile.mkstemp() - with open(self.config_file_1, 'w') as config_file: + with open(self.config_file_1, "w") as config_file: config_file.write( - '[section1]\n' - 'value1=1\n' - '\n' - '[section2]\n' - 'value2=2\n' + "[section1]\n" + "value1=1\n" + "\n" + "[section2]\n" + "value2=2\n" ) _, self.config_file_2 = tempfile.mkstemp() - with open(self.config_file_2, 'w') as config_file: + with open(self.config_file_2, "w") as config_file: config_file.write( - '[section1]\n' - 'value1=11\n' - 'value11=11\n' - '[section3]\n' - 'value3=3\n' + "[section1]\n" + "value1=11\n" + "value11=11\n" + "[section3]\n" + "value3=3\n" ) def tearDown(self): @@ -504,21 +504,21 @@ class ConfigFromIniTests(unittest.TestCase): def test(self): self.config.from_ini(self.config_file_1) - self.assertEqual(self.config(), {'section1': {'value1': '1'}, 'section2': {'value2': '2'}}) - self.assertEqual(self.config.section1(), {'value1': '1'}) - self.assertEqual(self.config.section1.value1(), '1') - self.assertEqual(self.config.section2(), {'value2': '2'}) - self.assertEqual(self.config.section2.value2(), '2') + self.assertEqual(self.config(), {"section1": {"value1": "1"}, "section2": {"value2": "2"}}) + self.assertEqual(self.config.section1(), {"value1": "1"}) + self.assertEqual(self.config.section1.value1(), "1") + self.assertEqual(self.config.section2(), {"value2": "2"}) + self.assertEqual(self.config.section2.value2(), "2") def test_option(self): self.config.option.from_ini(self.config_file_1) - self.assertEqual(self.config(), {'option': {'section1': {'value1': '1'}, 'section2': {'value2': '2'}}}) - self.assertEqual(self.config.option(), {'section1': {'value1': '1'}, 'section2': {'value2': '2'}}) - self.assertEqual(self.config.option.section1(), {'value1': '1'}) - self.assertEqual(self.config.option.section1.value1(), '1') - self.assertEqual(self.config.option.section2(), {'value2': '2'}) - self.assertEqual(self.config.option.section2.value2(), '2') + self.assertEqual(self.config(), {"option": {"section1": {"value1": "1"}, "section2": {"value2": "2"}}}) + self.assertEqual(self.config.option(), {"section1": {"value1": "1"}, "section2": {"value2": "2"}}) + self.assertEqual(self.config.option.section1(), {"value1": "1"}) + self.assertEqual(self.config.option.section1.value1(), "1") + self.assertEqual(self.config.option.section2(), {"value2": "2"}) + self.assertEqual(self.config.option.section2.value2(), "2") def test_merge(self): self.config.from_ini(self.config_file_1) @@ -527,60 +527,60 @@ class ConfigFromIniTests(unittest.TestCase): self.assertEqual( self.config(), { - 'section1': { - 'value1': '11', - 'value11': '11', + "section1": { + "value1": "11", + "value11": "11", }, - 'section2': { - 'value2': '2', + "section2": { + "value2": "2", }, - 'section3': { - 'value3': '3', + "section3": { + "value3": "3", }, }, ) - self.assertEqual(self.config.section1(), {'value1': '11', 'value11': '11'}) - self.assertEqual(self.config.section1.value1(), '11') - self.assertEqual(self.config.section1.value11(), '11') - self.assertEqual(self.config.section2(), {'value2': '2'}) - self.assertEqual(self.config.section2.value2(), '2') - self.assertEqual(self.config.section3(), {'value3': '3'}) - self.assertEqual(self.config.section3.value3(), '3') + self.assertEqual(self.config.section1(), {"value1": "11", "value11": "11"}) + self.assertEqual(self.config.section1.value1(), "11") + self.assertEqual(self.config.section1.value11(), "11") + self.assertEqual(self.config.section2(), {"value2": "2"}) + self.assertEqual(self.config.section2.value2(), "2") + self.assertEqual(self.config.section3(), {"value3": "3"}) + self.assertEqual(self.config.section3.value3(), "3") def test_file_does_not_exist(self): - self.config.from_ini('./does_not_exist.ini') + self.config.from_ini("./does_not_exist.ini") self.assertEqual(self.config(), {}) def test_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(IOError): - self.config.from_ini('./does_not_exist.ini') + self.config.from_ini("./does_not_exist.ini") def test_option_file_does_not_exist(self): - self.config.option.from_ini('does_not_exist.ini') + self.config.option.from_ini("does_not_exist.ini") self.assertIsNone(self.config.option.undefined()) def test_option_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(IOError): - self.config.option.from_ini('./does_not_exist.ini') + self.config.option.from_ini("./does_not_exist.ini") def test_required_file_does_not_exist(self): with self.assertRaises(IOError): - self.config.from_ini('./does_not_exist.ini', required=True) + self.config.from_ini("./does_not_exist.ini", required=True) def test_required_option_file_does_not_exist(self): with self.assertRaises(IOError): - self.config.option.from_ini('./does_not_exist.ini', required=True) + self.config.option.from_ini("./does_not_exist.ini", required=True) def test_not_required_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.from_ini('./does_not_exist.ini', required=False) + self.config.from_ini("./does_not_exist.ini", required=False) self.assertEqual(self.config(), {}) def test_not_required_option_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.option.from_ini('./does_not_exist.ini', required=False) + self.config.option.from_ini("./does_not_exist.ini", required=False) with self.assertRaises(errors.Error): self.config.option() @@ -588,23 +588,23 @@ class ConfigFromIniTests(unittest.TestCase): class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") - os.environ['CONFIG_TEST_ENV'] = 'test-value' - os.environ['CONFIG_TEST_PATH'] = 'test-path' + os.environ["CONFIG_TEST_ENV"] = "test-value" + os.environ["CONFIG_TEST_PATH"] = "test-path" _, self.config_file = tempfile.mkstemp() - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section1]\n' - 'value1=${CONFIG_TEST_ENV}\n' - 'value2=${CONFIG_TEST_PATH}/path\n' + "[section1]\n" + "value1=${CONFIG_TEST_ENV}\n" + "value2=${CONFIG_TEST_PATH}/path\n" ) def tearDown(self): del self.config - os.environ.pop('CONFIG_TEST_ENV', None) - os.environ.pop('CONFIG_TEST_PATH', None) + os.environ.pop("CONFIG_TEST_ENV", None) + os.environ.pop("CONFIG_TEST_PATH", None) os.unlink(self.config_file) def test_env_variable_interpolation(self): @@ -613,52 +613,52 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( self.config(), { - 'section1': { - 'value1': 'test-value', - 'value2': 'test-path/path', + "section1": { + "value1": "test-value", + "value2": "test-path/path", }, }, ) self.assertEqual( self.config.section1(), { - 'value1': 'test-value', - 'value2': 'test-path/path', + "value1": "test-value", + "value2": "test-path/path", }, ) - self.assertEqual(self.config.section1.value1(), 'test-value') - self.assertEqual(self.config.section1.value2(), 'test-path/path') + self.assertEqual(self.config.section1.value1(), "test-value") + self.assertEqual(self.config.section1.value2(), "test-path/path") def test_missing_envs_not_required(self): - del os.environ['CONFIG_TEST_ENV'] - del os.environ['CONFIG_TEST_PATH'] + del os.environ["CONFIG_TEST_ENV"] + del os.environ["CONFIG_TEST_PATH"] self.config.from_ini(self.config_file) self.assertEqual( self.config(), { - 'section1': { - 'value1': '', - 'value2': '/path', + "section1": { + "value1": "", + "value2": "/path", }, }, ) self.assertEqual( self.config.section1(), { - 'value1': '', - 'value2': '/path', + "value1": "", + "value2": "/path", }, ) - self.assertEqual(self.config.section1.value1(), '') - self.assertEqual(self.config.section1.value2(), '/path') + self.assertEqual(self.config.section1.value1(), "") + self.assertEqual(self.config.section1.value2(), "/path") def test_missing_envs_required(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section]\n' - 'undefined=${UNDEFINED}\n' + "[section]\n" + "undefined=${UNDEFINED}\n" ) with self.assertRaises(ValueError) as context: @@ -666,14 +666,14 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) def test_missing_envs_strict_mode(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section]\n' - 'undefined=${UNDEFINED}\n' + "[section]\n" + "undefined=${UNDEFINED}\n" ) self.config.set_strict(True) @@ -682,39 +682,39 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) def test_option_missing_envs_not_required(self): - del os.environ['CONFIG_TEST_ENV'] - del os.environ['CONFIG_TEST_PATH'] + del os.environ["CONFIG_TEST_ENV"] + del os.environ["CONFIG_TEST_PATH"] self.config.option.from_ini(self.config_file) self.assertEqual( self.config.option(), { - 'section1': { - 'value1': '', - 'value2': '/path', + "section1": { + "value1": "", + "value2": "/path", }, }, ) self.assertEqual( self.config.option.section1(), { - 'value1': '', - 'value2': '/path', + "value1": "", + "value2": "/path", }, ) - self.assertEqual(self.config.option.section1.value1(), '') - self.assertEqual(self.config.option.section1.value2(), '/path') + self.assertEqual(self.config.option.section1.value1(), "") + self.assertEqual(self.config.option.section1.value2(), "/path") def test_option_missing_envs_required(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section]\n' - 'undefined=${UNDEFINED}\n' + "[section]\n" + "undefined=${UNDEFINED}\n" ) with self.assertRaises(ValueError) as context: @@ -722,14 +722,14 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) def test_option_missing_envs_strict_mode(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section]\n' - 'undefined=${UNDEFINED}\n' + "[section]\n" + "undefined=${UNDEFINED}\n" ) self.config.set_strict(True) @@ -738,19 +738,19 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) def test_default_values(self): - os.environ['DEFINED'] = 'defined' - self.addCleanup(os.environ.pop, 'DEFINED') + os.environ["DEFINED"] = "defined" + self.addCleanup(os.environ.pop, "DEFINED") - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - '[section]\n' - 'defined_with_default=${DEFINED:default}\n' - 'undefined_with_default=${UNDEFINED:default}\n' - 'complex=${DEFINED}/path/${DEFINED:default}/${UNDEFINED}/${UNDEFINED:default}\n' + "[section]\n" + "defined_with_default=${DEFINED:default}\n" + "undefined_with_default=${UNDEFINED:default}\n" + "complex=${DEFINED}/path/${DEFINED:default}/${UNDEFINED}/${UNDEFINED:default}\n" ) self.config.from_ini(self.config_file) @@ -758,9 +758,9 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( self.config.section(), { - 'defined_with_default': 'defined', - 'undefined_with_default': 'default', - 'complex': 'defined/path/defined//default', + "defined_with_default": "defined", + "undefined_with_default": "default", + "complex": "defined/path/defined//default", }, ) @@ -768,26 +768,26 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): class ConfigFromYamlTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") _, self.config_file_1 = tempfile.mkstemp() - with open(self.config_file_1, 'w') as config_file: + with open(self.config_file_1, "w") as config_file: config_file.write( - 'section1:\n' - ' value1: 1\n' - '\n' - 'section2:\n' - ' value2: 2\n' + "section1:\n" + " value1: 1\n" + "\n" + "section2:\n" + " value2: 2\n" ) _, self.config_file_2 = tempfile.mkstemp() - with open(self.config_file_2, 'w') as config_file: + with open(self.config_file_2, "w") as config_file: config_file.write( - 'section1:\n' - ' value1: 11\n' - ' value11: 11\n' - 'section3:\n' - ' value3: 3\n' + "section1:\n" + " value1: 11\n" + " value11: 11\n" + "section3:\n" + " value3: 3\n" ) def tearDown(self): @@ -795,17 +795,17 @@ class ConfigFromYamlTests(unittest.TestCase): os.unlink(self.config_file_1) os.unlink(self.config_file_2) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test(self): self.config.from_yaml(self.config_file_1) - self.assertEqual(self.config(), {'section1': {'value1': 1}, 'section2': {'value2': 2}}) - self.assertEqual(self.config.section1(), {'value1': 1}) + self.assertEqual(self.config(), {"section1": {"value1": 1}, "section2": {"value2": 2}}) + self.assertEqual(self.config.section1(), {"value1": 1}) self.assertEqual(self.config.section1.value1(), 1) - self.assertEqual(self.config.section2(), {'value2': 2}) + self.assertEqual(self.config.section2(), {"value2": 2}) self.assertEqual(self.config.section2.value2(), 2) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_merge(self): self.config.from_yaml(self.config_file_1) self.config.from_yaml(self.config_file_2) @@ -813,68 +813,68 @@ class ConfigFromYamlTests(unittest.TestCase): self.assertEqual( self.config(), { - 'section1': { - 'value1': 11, - 'value11': 11, + "section1": { + "value1": 11, + "value11": 11, }, - 'section2': { - 'value2': 2, + "section2": { + "value2": 2, }, - 'section3': { - 'value3': 3, + "section3": { + "value3": 3, }, }, ) - self.assertEqual(self.config.section1(), {'value1': 11, 'value11': 11}) + self.assertEqual(self.config.section1(), {"value1": 11, "value11": 11}) self.assertEqual(self.config.section1.value1(), 11) self.assertEqual(self.config.section1.value11(), 11) - self.assertEqual(self.config.section2(), {'value2': 2}) + self.assertEqual(self.config.section2(), {"value2": 2}) self.assertEqual(self.config.section2.value2(), 2) - self.assertEqual(self.config.section3(), {'value3': 3}) + self.assertEqual(self.config.section3(), {"value3": 3}) self.assertEqual(self.config.section3.value3(), 3) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_file_does_not_exist(self): - self.config.from_yaml('./does_not_exist.yml') + self.config.from_yaml("./does_not_exist.yml") self.assertEqual(self.config(), {}) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(IOError): - self.config.from_yaml('./does_not_exist.yml') + self.config.from_yaml("./does_not_exist.yml") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_file_does_not_exist(self): - self.config.option.from_yaml('./does_not_exist.yml') + self.config.option.from_yaml("./does_not_exist.yml") self.assertIsNone(self.config.option()) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(IOError): - self.config.option.from_yaml('./does_not_exist.yml') + self.config.option.from_yaml("./does_not_exist.yml") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_required_file_does_not_exist(self): with self.assertRaises(IOError): - self.config.from_yaml('./does_not_exist.yml', required=True) + self.config.from_yaml("./does_not_exist.yml", required=True) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_required_option_file_does_not_exist(self): with self.assertRaises(IOError): - self.config.option.from_yaml('./does_not_exist.yml', required=True) + self.config.option.from_yaml("./does_not_exist.yml", required=True) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_not_required_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.from_yaml('./does_not_exist.yml', required=False) + self.config.from_yaml("./does_not_exist.yml", required=False) self.assertEqual(self.config(), {}) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_not_required_option_file_does_not_exist_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.option.from_yaml('./does_not_exist.yml', required=False) + self.config.option.from_yaml("./does_not_exist.yml", required=False) with self.assertRaises(errors.Error): self.config.option() @@ -894,9 +894,9 @@ class ConfigFromYamlTests(unittest.TestCase): self.assertEqual( error.exception.args[0], - 'Unable to load yaml configuration - PyYAML is not installed. ' - 'Install PyYAML or install Dependency Injector with yaml extras: ' - '"pip install dependency-injector[yaml]"', + "Unable to load yaml configuration - PyYAML is not installed. " + "Install PyYAML or install Dependency Injector with yaml extras: " + "\"pip install dependency-injector[yaml]\"", ) def test_option_no_yaml_installed(self): @@ -915,89 +915,89 @@ class ConfigFromYamlTests(unittest.TestCase): self.assertEqual( error.exception.args[0], - 'Unable to load yaml configuration - PyYAML is not installed. ' - 'Install PyYAML or install Dependency Injector with yaml extras: ' - '"pip install dependency-injector[yaml]"', + "Unable to load yaml configuration - PyYAML is not installed. " + "Install PyYAML or install Dependency Injector with yaml extras: " + "\"pip install dependency-injector[yaml]\"", ) class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") - os.environ['CONFIG_TEST_ENV'] = 'test-value' - os.environ['CONFIG_TEST_PATH'] = 'test-path' + os.environ["CONFIG_TEST_ENV"] = "test-value" + os.environ["CONFIG_TEST_PATH"] = "test-path" _, self.config_file = tempfile.mkstemp() - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section1:\n' - ' value1: ${CONFIG_TEST_ENV}\n' - ' value2: ${CONFIG_TEST_PATH}/path\n' + "section1:\n" + " value1: ${CONFIG_TEST_ENV}\n" + " value2: ${CONFIG_TEST_PATH}/path\n" ) def tearDown(self): del self.config - os.environ.pop('CONFIG_TEST_ENV', None) - os.environ.pop('CONFIG_TEST_PATH', None) + os.environ.pop("CONFIG_TEST_ENV", None) + os.environ.pop("CONFIG_TEST_PATH", None) os.unlink(self.config_file) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_env_variable_interpolation(self): self.config.from_yaml(self.config_file) self.assertEqual( self.config(), { - 'section1': { - 'value1': 'test-value', - 'value2': 'test-path/path', + "section1": { + "value1": "test-value", + "value2": "test-path/path", }, }, ) self.assertEqual( self.config.section1(), { - 'value1': 'test-value', - 'value2': 'test-path/path', + "value1": "test-value", + "value2": "test-path/path", }, ) - self.assertEqual(self.config.section1.value1(), 'test-value') - self.assertEqual(self.config.section1.value2(), 'test-path/path') + self.assertEqual(self.config.section1.value1(), "test-value") + self.assertEqual(self.config.section1.value2(), "test-path/path") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_missing_envs_not_required(self): - del os.environ['CONFIG_TEST_ENV'] - del os.environ['CONFIG_TEST_PATH'] + del os.environ["CONFIG_TEST_ENV"] + del os.environ["CONFIG_TEST_PATH"] self.config.from_yaml(self.config_file) self.assertEqual( self.config(), { - 'section1': { - 'value1': None, - 'value2': '/path', + "section1": { + "value1": None, + "value2": "/path", }, }, ) self.assertEqual( self.config.section1(), { - 'value1': None, - 'value2': '/path', + "value1": None, + "value2": "/path", }, ) self.assertIsNone(self.config.section1.value1()) - self.assertEqual(self.config.section1.value2(), '/path') + self.assertEqual(self.config.section1.value2(), "/path") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_missing_envs_required(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section:\n' - ' undefined: ${UNDEFINED}\n' + "section:\n" + " undefined: ${UNDEFINED}\n" ) with self.assertRaises(ValueError) as context: @@ -1005,15 +1005,15 @@ class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_missing_envs_strict_mode(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section:\n' - ' undefined: ${UNDEFINED}\n' + "section:\n" + " undefined: ${UNDEFINED}\n" ) self.config.set_strict(True) @@ -1022,41 +1022,41 @@ class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_missing_envs_not_required(self): - del os.environ['CONFIG_TEST_ENV'] - del os.environ['CONFIG_TEST_PATH'] + del os.environ["CONFIG_TEST_ENV"] + del os.environ["CONFIG_TEST_PATH"] self.config.option.from_yaml(self.config_file) self.assertEqual( self.config.option(), { - 'section1': { - 'value1': None, - 'value2': '/path', + "section1": { + "value1": None, + "value2": "/path", }, }, ) self.assertEqual( self.config.option.section1(), { - 'value1': None, - 'value2': '/path', + "value1": None, + "value2": "/path", }, ) self.assertIsNone(self.config.option.section1.value1()) - self.assertEqual(self.config.option.section1.value2(), '/path') + self.assertEqual(self.config.option.section1.value2(), "/path") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_missing_envs_required(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section:\n' - ' undefined: ${UNDEFINED}\n' + "section:\n" + " undefined: ${UNDEFINED}\n" ) with self.assertRaises(ValueError) as context: @@ -1064,15 +1064,15 @@ class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_missing_envs_strict_mode(self): - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section:\n' - ' undefined: ${UNDEFINED}\n' + "section:\n" + " undefined: ${UNDEFINED}\n" ) self.config.set_strict(True) @@ -1081,20 +1081,20 @@ class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( str(context.exception), - 'Missing required environment variable "UNDEFINED"', + "Missing required environment variable \"UNDEFINED\"", ) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_default_values(self): - os.environ['DEFINED'] = 'defined' - self.addCleanup(os.environ.pop, 'DEFINED') + os.environ["DEFINED"] = "defined" + self.addCleanup(os.environ.pop, "DEFINED") - with open(self.config_file, 'w') as config_file: + with open(self.config_file, "w") as config_file: config_file.write( - 'section:\n' - ' defined_with_default: ${DEFINED:default}\n' - ' undefined_with_default: ${UNDEFINED:default}\n' - ' complex: ${DEFINED}/path/${DEFINED:default}/${UNDEFINED}/${UNDEFINED:default}\n' + "section:\n" + " defined_with_default: ${DEFINED:default}\n" + " undefined_with_default: ${UNDEFINED:default}\n" + " complex: ${DEFINED}/path/${DEFINED:default}/${UNDEFINED}/${UNDEFINED:default}\n" ) self.config.from_yaml(self.config_file) @@ -1102,68 +1102,68 @@ class ConfigFromYamlWithEnvInterpolationTests(unittest.TestCase): self.assertEqual( self.config.section(), { - 'defined_with_default': 'defined', - 'undefined_with_default': 'default', - 'complex': 'defined/path/defined//default', + "defined_with_default": "defined", + "undefined_with_default": "default", + "complex": "defined/path/defined//default", }, ) - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_env_variable_interpolation(self): self.config.option.from_yaml(self.config_file) self.assertEqual( self.config.option(), { - 'section1': { - 'value1': 'test-value', - 'value2': 'test-path/path', + "section1": { + "value1": "test-value", + "value2": "test-path/path", }, }, ) self.assertEqual( self.config.option.section1(), { - 'value1': 'test-value', - 'value2': 'test-path/path', + "value1": "test-value", + "value2": "test-path/path", }, ) - self.assertEqual(self.config.option.section1.value1(), 'test-value') - self.assertEqual(self.config.option.section1.value2(), 'test-path/path') + self.assertEqual(self.config.option.section1.value1(), "test-value") + self.assertEqual(self.config.option.section1.value2(), "test-path/path") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_env_variable_interpolation_custom_loader(self): self.config.from_yaml(self.config_file, loader=yaml.UnsafeLoader) self.assertEqual( self.config.section1(), { - 'value1': 'test-value', - 'value2': 'test-path/path', + "value1": "test-value", + "value2": "test-path/path", }, ) - self.assertEqual(self.config.section1.value1(), 'test-value') - self.assertEqual(self.config.section1.value2(), 'test-path/path') + self.assertEqual(self.config.section1.value1(), "test-value") + self.assertEqual(self.config.section1.value2(), "test-path/path") - @unittest.skipIf(sys.version_info[:2] == (3, 4), 'PyYAML does not support Python 3.4') + @unittest.skipIf(sys.version_info[:2] == (3, 4), "PyYAML does not support Python 3.4") def test_option_env_variable_interpolation_custom_loader(self): self.config.option.from_yaml(self.config_file, loader=yaml.UnsafeLoader) self.assertEqual( self.config.option.section1(), { - 'value1': 'test-value', - 'value2': 'test-path/path', + "value1": "test-value", + "value2": "test-path/path", }, ) - self.assertEqual(self.config.option.section1.value1(), 'test-value') - self.assertEqual(self.config.option.section1.value2(), 'test-path/path') + self.assertEqual(self.config.option.section1.value1(), "test-value") + self.assertEqual(self.config.option.section1.value2(), "test-path/path") class ConfigFromPydanticTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") class Section11(pydantic.BaseModel): value1 = 1 @@ -1190,25 +1190,25 @@ class ConfigFromPydanticTests(unittest.TestCase): self.Settings2 = Settings2 - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test(self): self.config.from_pydantic(self.Settings1()) - self.assertEqual(self.config(), {'section1': {'value1': 1}, 'section2': {'value2': 2}}) - self.assertEqual(self.config.section1(), {'value1': 1}) + self.assertEqual(self.config(), {"section1": {"value1": 1}, "section2": {"value2": 2}}) + self.assertEqual(self.config.section1(), {"value1": 1}) self.assertEqual(self.config.section1.value1(), 1) - self.assertEqual(self.config.section2(), {'value2': 2}) + self.assertEqual(self.config.section2(), {"value2": 2}) self.assertEqual(self.config.section2.value2(), 2) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_kwarg(self): - self.config.from_pydantic(self.Settings1(), exclude={'section2'}) + self.config.from_pydantic(self.Settings1(), exclude={"section2"}) - self.assertEqual(self.config(), {'section1': {'value1': 1}}) - self.assertEqual(self.config.section1(), {'value1': 1}) + self.assertEqual(self.config(), {"section1": {"value1": 1}}) + self.assertEqual(self.config.section1(), {"value1": 1}) self.assertEqual(self.config.section1.value1(), 1) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_merge(self): self.config.from_pydantic(self.Settings1()) self.config.from_pydantic(self.Settings2()) @@ -1216,116 +1216,116 @@ class ConfigFromPydanticTests(unittest.TestCase): self.assertEqual( self.config(), { - 'section1': { - 'value1': 11, - 'value11': 11, + "section1": { + "value1": 11, + "value11": 11, }, - 'section2': { - 'value2': 2, + "section2": { + "value2": 2, }, - 'section3': { - 'value3': 3, + "section3": { + "value3": 3, }, }, ) - self.assertEqual(self.config.section1(), {'value1': 11, 'value11': 11}) + self.assertEqual(self.config.section1(), {"value1": 11, "value11": 11}) self.assertEqual(self.config.section1.value1(), 11) self.assertEqual(self.config.section1.value11(), 11) - self.assertEqual(self.config.section2(), {'value2': 2}) + self.assertEqual(self.config.section2(), {"value2": 2}) self.assertEqual(self.config.section2.value2(), 2) - self.assertEqual(self.config.section3(), {'value3': 3}) + self.assertEqual(self.config.section3(), {"value3": 3}) self.assertEqual(self.config.section3.value3(), 3) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_empty_settings(self): self.config.from_pydantic(pydantic.BaseSettings()) self.assertEqual(self.config(), {}) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_empty_settings_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(ValueError): self.config.from_pydantic(pydantic.BaseSettings()) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_option_empty_settings(self): self.config.option.from_pydantic(pydantic.BaseSettings()) self.assertEqual(self.config.option(), {}) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_option_empty_settings_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(ValueError): self.config.option.from_pydantic(pydantic.BaseSettings()) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_required_empty_settings(self): with self.assertRaises(ValueError): self.config.from_pydantic(pydantic.BaseSettings(), required=True) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_required_option_empty_settings(self): with self.assertRaises(ValueError): self.config.option.from_pydantic(pydantic.BaseSettings(), required=True) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_not_required_empty_settings_strict_mode(self): self.config = providers.Configuration(strict=True) self.config.from_pydantic(pydantic.BaseSettings(), required=False) self.assertEqual(self.config(), {}) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_not_required_option_empty_settings_strict_mode(self): self.config = providers.Configuration(strict=True) self.config.option.from_pydantic(pydantic.BaseSettings(), required=False) self.assertEqual(self.config.option(), {}) - self.assertEqual(self.config(), {'option': {}}) + self.assertEqual(self.config(), {"option": {}}) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_not_instance_of_settings(self): with self.assertRaises(errors.Error) as error: self.config.from_pydantic({}) self.assertEqual( error.exception.args[0], - 'Unable to recognize settings instance, expect "pydantic.BaseSettings", ' - 'got {0} instead'.format({}) + "Unable to recognize settings instance, expect \"pydantic.BaseSettings\", " + "got {0} instead".format({}) ) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_option_not_instance_of_settings(self): with self.assertRaises(errors.Error) as error: self.config.option.from_pydantic({}) self.assertEqual( error.exception.args[0], - 'Unable to recognize settings instance, expect "pydantic.BaseSettings", ' - 'got {0} instead'.format({}) + "Unable to recognize settings instance, expect \"pydantic.BaseSettings\", " + "got {0} instead".format({}) ) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_subclass_instead_of_instance(self): with self.assertRaises(errors.Error) as error: self.config.from_pydantic(self.Settings1) self.assertEqual( error.exception.args[0], - 'Got settings class, but expect instance: ' - 'instead "Settings1" use "Settings1()"' + "Got settings class, but expect instance: " + "instead \"Settings1\" use \"Settings1()\"" ) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_option_subclass_instead_of_instance(self): with self.assertRaises(errors.Error) as error: self.config.option.from_pydantic(self.Settings1) self.assertEqual( error.exception.args[0], - 'Got settings class, but expect instance: ' - 'instead "Settings1" use "Settings1()"' + "Got settings class, but expect instance: " + "instead \"Settings1\" use \"Settings1()\"" ) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_no_pydantic_installed(self): @contextlib.contextmanager def no_pydantic_module(): @@ -1342,12 +1342,12 @@ class ConfigFromPydanticTests(unittest.TestCase): self.assertEqual( error.exception.args[0], - 'Unable to load pydantic configuration - pydantic is not installed. ' - 'Install pydantic or install Dependency Injector with pydantic extras: ' - '"pip install dependency-injector[pydantic]"', + "Unable to load pydantic configuration - pydantic is not installed. " + "Install pydantic or install Dependency Injector with pydantic extras: " + "\"pip install dependency-injector[pydantic]\"", ) - @unittest.skipIf(sys.version_info[:2] < (3, 6), 'Pydantic supports Python 3.6+') + @unittest.skipIf(sys.version_info[:2] < (3, 6), "Pydantic supports Python 3.6+") def test_option_no_pydantic_installed(self): @contextlib.contextmanager def no_pydantic_module(): @@ -1364,43 +1364,43 @@ class ConfigFromPydanticTests(unittest.TestCase): self.assertEqual( error.exception.args[0], - 'Unable to load pydantic configuration - pydantic is not installed. ' - 'Install pydantic or install Dependency Injector with pydantic extras: ' - '"pip install dependency-injector[pydantic]"', + "Unable to load pydantic configuration - pydantic is not installed. " + "Install pydantic or install Dependency Injector with pydantic extras: " + "\"pip install dependency-injector[pydantic]\"", ) class ConfigFromDict(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") self.config_options_1 = { - 'section1': { - 'value1': '1', + "section1": { + "value1": "1", }, - 'section2': { - 'value2': '2', + "section2": { + "value2": "2", }, } self.config_options_2 = { - 'section1': { - 'value1': '11', - 'value11': '11', + "section1": { + "value1": "11", + "value11": "11", }, - 'section3': { - 'value3': '3', + "section3": { + "value3": "3", }, } def test(self): self.config.from_dict(self.config_options_1) - self.assertEqual(self.config(), {'section1': {'value1': '1'}, 'section2': {'value2': '2'}}) - self.assertEqual(self.config.section1(), {'value1': '1'}) - self.assertEqual(self.config.section1.value1(), '1') - self.assertEqual(self.config.section2(), {'value2': '2'}) - self.assertEqual(self.config.section2.value2(), '2') + self.assertEqual(self.config(), {"section1": {"value1": "1"}, "section2": {"value2": "2"}}) + self.assertEqual(self.config.section1(), {"value1": "1"}) + self.assertEqual(self.config.section1.value1(), "1") + self.assertEqual(self.config.section2(), {"value2": "2"}) + self.assertEqual(self.config.section2.value2(), "2") def test_merge(self): self.config.from_dict(self.config_options_1) @@ -1409,25 +1409,25 @@ class ConfigFromDict(unittest.TestCase): self.assertEqual( self.config(), { - 'section1': { - 'value1': '11', - 'value11': '11', + "section1": { + "value1": "11", + "value11": "11", }, - 'section2': { - 'value2': '2', + "section2": { + "value2": "2", }, - 'section3': { - 'value3': '3', + "section3": { + "value3": "3", }, }, ) - self.assertEqual(self.config.section1(), {'value1': '11', 'value11': '11'}) - self.assertEqual(self.config.section1.value1(), '11') - self.assertEqual(self.config.section1.value11(), '11') - self.assertEqual(self.config.section2(), {'value2': '2'}) - self.assertEqual(self.config.section2.value2(), '2') - self.assertEqual(self.config.section3(), {'value3': '3'}) - self.assertEqual(self.config.section3.value3(), '3') + self.assertEqual(self.config.section1(), {"value1": "11", "value11": "11"}) + self.assertEqual(self.config.section1.value1(), "11") + self.assertEqual(self.config.section1.value11(), "11") + self.assertEqual(self.config.section2(), {"value2": "2"}) + self.assertEqual(self.config.section2.value2(), "2") + self.assertEqual(self.config.section3(), {"value3": "3"}) + self.assertEqual(self.config.section3.value3(), "3") def test_empty_dict(self): self.config.from_dict({}) @@ -1464,103 +1464,103 @@ class ConfigFromDict(unittest.TestCase): self.config = providers.Configuration(strict=True) self.config.option.from_dict({}, required=False) self.assertEqual(self.config.option(), {}) - self.assertEqual(self.config(), {'option': {}}) + self.assertEqual(self.config(), {"option": {}}) class ConfigFromEnvTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') - os.environ['CONFIG_TEST_ENV'] = 'test-value' + self.config = providers.Configuration(name="config") + os.environ["CONFIG_TEST_ENV"] = "test-value" def tearDown(self): del self.config - del os.environ['CONFIG_TEST_ENV'] + del os.environ["CONFIG_TEST_ENV"] def test(self): - self.config.from_env('CONFIG_TEST_ENV') - self.assertEqual(self.config(), 'test-value') + self.config.from_env("CONFIG_TEST_ENV") + self.assertEqual(self.config(), "test-value") def test_with_children(self): - self.config.section1.value1.from_env('CONFIG_TEST_ENV') + self.config.section1.value1.from_env("CONFIG_TEST_ENV") - self.assertEqual(self.config(), {'section1': {'value1': 'test-value'}}) - self.assertEqual(self.config.section1(), {'value1': 'test-value'}) - self.assertEqual(self.config.section1.value1(), 'test-value') + self.assertEqual(self.config(), {"section1": {"value1": "test-value"}}) + self.assertEqual(self.config.section1(), {"value1": "test-value"}) + self.assertEqual(self.config.section1.value1(), "test-value") def test_default(self): - self.config.from_env('UNDEFINED_ENV', 'default-value') - self.assertEqual(self.config(), 'default-value') + self.config.from_env("UNDEFINED_ENV", "default-value") + self.assertEqual(self.config(), "default-value") def test_default_none(self): - self.config.from_env('UNDEFINED_ENV') + self.config.from_env("UNDEFINED_ENV") self.assertIsNone(self.config()) def test_option_default_none(self): - self.config.option.from_env('UNDEFINED_ENV') + self.config.option.from_env("UNDEFINED_ENV") self.assertIsNone(self.config.option()) def test_undefined_in_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(ValueError): - self.config.from_env('UNDEFINED_ENV') + self.config.from_env("UNDEFINED_ENV") def test_option_undefined_in_strict_mode(self): self.config = providers.Configuration(strict=True) with self.assertRaises(ValueError): - self.config.option.from_env('UNDEFINED_ENV') + self.config.option.from_env("UNDEFINED_ENV") def test_undefined_in_strict_mode_with_default(self): self.config = providers.Configuration(strict=True) - self.config.from_env('UNDEFINED_ENV', 'default-value') - self.assertEqual(self.config(), 'default-value') + self.config.from_env("UNDEFINED_ENV", "default-value") + self.assertEqual(self.config(), "default-value") def test_option_undefined_in_strict_mode_with_default(self): self.config = providers.Configuration(strict=True) - self.config.option.from_env('UNDEFINED_ENV', 'default-value') - self.assertEqual(self.config.option(), 'default-value') + self.config.option.from_env("UNDEFINED_ENV", "default-value") + self.assertEqual(self.config.option(), "default-value") def test_required_undefined(self): with self.assertRaises(ValueError): - self.config.from_env('UNDEFINED_ENV', required=True) + self.config.from_env("UNDEFINED_ENV", required=True) def test_required_undefined_with_default(self): - self.config.from_env('UNDEFINED_ENV', default='default-value', required=True) - self.assertEqual(self.config(), 'default-value') + self.config.from_env("UNDEFINED_ENV", default="default-value", required=True) + self.assertEqual(self.config(), "default-value") def test_option_required_undefined(self): with self.assertRaises(ValueError): - self.config.option.from_env('UNDEFINED_ENV', required=True) + self.config.option.from_env("UNDEFINED_ENV", required=True) def test_option_required_undefined_with_default(self): - self.config.option.from_env('UNDEFINED_ENV', default='default-value', required=True) - self.assertEqual(self.config.option(), 'default-value') + self.config.option.from_env("UNDEFINED_ENV", default="default-value", required=True) + self.assertEqual(self.config.option(), "default-value") def test_not_required_undefined_in_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.from_env('UNDEFINED_ENV', required=False) + self.config.from_env("UNDEFINED_ENV", required=False) self.assertIsNone(self.config()) def test_option_not_required_undefined_in_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.option.from_env('UNDEFINED_ENV', required=False) + self.config.option.from_env("UNDEFINED_ENV", required=False) self.assertIsNone(self.config.option()) def test_not_required_undefined_with_default_in_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.from_env('UNDEFINED_ENV', default='default-value', required=False) - self.assertEqual(self.config(), 'default-value') + self.config.from_env("UNDEFINED_ENV", default="default-value", required=False) + self.assertEqual(self.config(), "default-value") def test_option_not_required_undefined_with_default_in_strict_mode(self): self.config = providers.Configuration(strict=True) - self.config.option.from_env('UNDEFINED_ENV', default='default-value', required=False) - self.assertEqual(self.config.option(), 'default-value') + self.config.option.from_env("UNDEFINED_ENV", default="default-value", required=False) + self.assertEqual(self.config.option(), "default-value") class ConfigFromValueTests(unittest.TestCase): def setUp(self): - self.config = providers.Configuration(name='config') + self.config = providers.Configuration(name="config") def test_from_value(self): test_value = 123321 @@ -1574,6 +1574,6 @@ class ConfigFromValueTests(unittest.TestCase): self.config.option1.from_value(test_value_1) self.config.option2.from_value(test_value_2) - self.assertEqual(self.config(), {'option1': test_value_1, 'option2': test_value_2}) + self.assertEqual(self.config(), {"option1": test_value_1, "option2": test_value_2}) self.assertEqual(self.config.option1(), test_value_1) self.assertEqual(self.config.option2(), test_value_2) diff --git a/tests/unit/providers/test_container_py2_py3.py b/tests/unit/providers/test_container_py2_py3.py index b31caeb4..341d1643 100644 --- a/tests/unit/providers/test_container_py2_py3.py +++ b/tests/unit/providers/test_container_py2_py3.py @@ -7,20 +7,20 @@ import unittest from dependency_injector import containers, providers, errors -TEST_VALUE_1 = 'core_section_value1' +TEST_VALUE_1 = "core_section_value1" TEST_CONFIG_1 = { - 'core': { - 'section': { - 'value': TEST_VALUE_1, + "core": { + "section": { + "value": TEST_VALUE_1, }, }, } -TEST_VALUE_2 = 'core_section_value2' +TEST_VALUE_2 = "core_section_value2" TEST_CONFIG_2 = { - 'core': { - 'section': { - 'value': TEST_VALUE_2, + "core": { + "section": { + "value": TEST_VALUE_2, }, }, } @@ -31,12 +31,12 @@ def _copied(value): class TestCore(containers.DeclarativeContainer): - config = providers.Configuration('core') + config = providers.Configuration("core") value_getter = providers.Callable(lambda _: _, config.section.value) class TestApplication(containers.DeclarativeContainer): - config = providers.Configuration('config') + config = providers.Configuration("config") core = providers.Container(TestCore, config=config.core) dict_factory = providers.Factory(dict, value=core.value_getter) @@ -45,22 +45,22 @@ class ContainerTests(unittest.TestCase): def test(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_1}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_1}) def test_double_override(self): application = TestApplication() application.config.override(_copied(TEST_CONFIG_1)) application.config.override(_copied(TEST_CONFIG_2)) - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_2}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_2}) def test_override(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/354 class D(containers.DeclarativeContainer): - foo = providers.Object('foo') + foo = providers.Object("foo") class A(containers.DeclarativeContainer): d = providers.DependenciesContainer() - bar = providers.Callable(lambda f: f + '++', d.foo.provided) + bar = providers.Callable(lambda f: f + "++", d.foo.provided) class B(containers.DeclarativeContainer): d = providers.Container(D) @@ -69,7 +69,7 @@ class ContainerTests(unittest.TestCase): b = B(d=D()) result = b.a().bar() - self.assertEqual(result, 'foo++') + self.assertEqual(result, "foo++") def test_override_not_root_provider(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/379 @@ -102,37 +102,37 @@ class ContainerTests(unittest.TestCase): ) container_using_factory = TestContainer(settings=dict( - container='using_factory', - foo='bar' + container="using_factory", + foo="bar" )) self.assertEqual( container_using_factory.root_container().print_settings(), - {'container': 'using_factory', 'foo': 'bar'}, + {"container": "using_factory", "foo": "bar"}, ) self.assertEqual( container_using_factory.not_root_container().print_settings(), - {'container': 'using_factory', 'foo': 'bar'}, + {"container": "using_factory", "foo": "bar"}, ) container_using_container = TestContainer(settings=dict( - container='using_container', - foo='bar' + container="using_container", + foo="bar" )) self.assertEqual( container_using_container.root_container().print_settings(), - {'container': 'using_container', 'foo': 'bar'}, + {"container": "using_container", "foo": "bar"}, ) self.assertEqual( container_using_container.not_root_container().print_settings(), - {'container': 'using_container', 'foo': 'bar'}, + {"container": "using_container", "foo": "bar"}, ) def test_override_by_not_a_container(self): provider = providers.Container(TestCore) with self.assertRaises(errors.Error): - provider.override(providers.Object('foo')) + provider.override(providers.Object("foo")) def test_lazy_overriding(self): # See: https://github.com/ets-labs/python-dependency-injector/issues/354 @@ -151,7 +151,7 @@ class ContainerTests(unittest.TestCase): b = B(d=D()) result = b.a().bar() - self.assertEqual(result, 'foo++') + self.assertEqual(result, "foo++") def test_lazy_overriding_deep(self): # Extended version of test_lazy_overriding() @@ -174,49 +174,49 @@ class ContainerTests(unittest.TestCase): b = B(d=D()) result = b.a().c().bar() - self.assertEqual(result, 'foo++') + self.assertEqual(result, "foo++") def test_reset_last_overriding(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - application.core.override(TestCore(config=_copied(TEST_CONFIG_2['core']))) + application.core.override(TestCore(config=_copied(TEST_CONFIG_2["core"]))) application.core.reset_last_overriding() - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_1}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_1}) def test_reset_last_overriding_only_overridden(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - application.core.override(providers.DependenciesContainer(config=_copied(TEST_CONFIG_2['core']))) + application.core.override(providers.DependenciesContainer(config=_copied(TEST_CONFIG_2["core"]))) application.core.reset_last_overriding() - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_1}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_1}) def test_override_context_manager(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - overriding_core = TestCore(config=_copied(TEST_CONFIG_2['core'])) + overriding_core = TestCore(config=_copied(TEST_CONFIG_2["core"])) with application.core.override(overriding_core) as context_core: - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_2}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_2}) self.assertIs(context_core(), overriding_core) - self.assertEqual(application.dict_factory(), {'value': TEST_VALUE_1}) + self.assertEqual(application.dict_factory(), {"value": TEST_VALUE_1}) def test_reset_override(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - application.core.override(TestCore(config=_copied(TEST_CONFIG_2['core']))) + application.core.override(TestCore(config=_copied(TEST_CONFIG_2["core"]))) application.core.reset_override() - self.assertEqual(application.dict_factory(), {'value': None}) + self.assertEqual(application.dict_factory(), {"value": None}) def test_reset_override_only_overridden(self): application = TestApplication(config=_copied(TEST_CONFIG_1)) - application.core.override(providers.DependenciesContainer(config=_copied(TEST_CONFIG_2['core']))) + application.core.override(providers.DependenciesContainer(config=_copied(TEST_CONFIG_2["core"]))) application.core.reset_override() - self.assertEqual(application.dict_factory(), {'value': None}) + self.assertEqual(application.dict_factory(), {"value": None}) def test_assign_parent(self): parent = providers.DependenciesContainer() @@ -230,13 +230,13 @@ class ContainerTests(unittest.TestCase): container = containers.DynamicContainer() provider = providers.Container(TestCore) container.name = provider - self.assertEqual(provider.parent_name, 'name') + self.assertEqual(provider.parent_name, "name") def test_parent_name_with_deep_parenting(self): provider = providers.Container(TestCore) container = providers.DependenciesContainer(name=provider) _ = providers.DependenciesContainer(container=container) - self.assertEqual(provider.parent_name, 'container.name') + self.assertEqual(provider.parent_name, "container.name") def test_parent_name_is_none(self): provider = providers.Container(TestCore) @@ -258,7 +258,7 @@ class ContainerTests(unittest.TestCase): def test_resolve_provider_name(self): container = providers.Container(TestCore) - self.assertEqual(container.resolve_provider_name(container.value_getter), 'value_getter') + self.assertEqual(container.resolve_provider_name(container.value_getter), "value_getter") def test_resolve_provider_name_no_provider(self): container = providers.Container(TestCore) diff --git a/tests/unit/providers/test_coroutines_py35.py b/tests/unit/providers/test_coroutines_py35.py index 54f4cb00..18eabaf0 100644 --- a/tests/unit/providers/test_coroutines_py35.py +++ b/tests/unit/providers/test_coroutines_py35.py @@ -14,7 +14,7 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) import sys @@ -172,8 +172,8 @@ class CoroutineTests(AsyncTestCase): provider.add_kwargs(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['a1'] - dependent_provider_copy2 = provider_copy.kwargs['a2'] + dependent_provider_copy1 = provider_copy.kwargs["a1"] + dependent_provider_copy2 = provider_copy.kwargs["a2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -205,8 +205,8 @@ class CoroutineTests(AsyncTestCase): provider = providers.Coroutine(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) @@ -229,8 +229,8 @@ class DelegatedCoroutineTests(unittest.TestCase): provider = providers.DelegatedCoroutine(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) @@ -243,11 +243,11 @@ class AbstractCoroutineTests(AsyncTestCase): def test_call_overridden_by_coroutine(self): with warnings.catch_warnings(): - warnings.simplefilter('ignore') + warnings.simplefilter("ignore") @asyncio.coroutine def _abstract_example(): - raise RuntimeError('Should not be raised') + raise RuntimeError("Should not be raised") provider = providers.AbstractCoroutine(_abstract_example) provider.override(providers.Coroutine(_example)) @@ -256,11 +256,11 @@ class AbstractCoroutineTests(AsyncTestCase): def test_call_overridden_by_delegated_coroutine(self): with warnings.catch_warnings(): - warnings.simplefilter('ignore') + warnings.simplefilter("ignore") @asyncio.coroutine def _abstract_example(): - raise RuntimeError('Should not be raised') + raise RuntimeError("Should not be raised") provider = providers.AbstractCoroutine(_abstract_example) provider.override(providers.DelegatedCoroutine(_example)) @@ -289,8 +289,8 @@ class AbstractCoroutineTests(AsyncTestCase): provider = providers.AbstractCoroutine(_example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(_example), hex(id(provider)))) diff --git a/tests/unit/providers/test_dict_py2_py3.py b/tests/unit/providers/test_dict_py2_py3.py index a5a900cb..08e6670a 100644 --- a/tests/unit/providers/test_dict_py2_py3.py +++ b/tests/unit/providers/test_dict_py2_py3.py @@ -19,110 +19,110 @@ class DictTests(unittest.TestCase): def test_init_with_non_string_keys(self): a1 = object() a2 = object() - provider = providers.Dict({a1: 'i1', a2: 'i2'}) + provider = providers.Dict({a1: "i1", a2: "i2"}) dict1 = provider() dict2 = provider() - self.assertEqual(dict1, {a1: 'i1', a2: 'i2'}) - self.assertEqual(dict2, {a1: 'i1', a2: 'i2'}) + self.assertEqual(dict1, {a1: "i1", a2: "i2"}) + self.assertEqual(dict2, {a1: "i1", a2: "i2"}) self.assertIsNot(dict1, dict2) def test_init_with_string_and_non_string_keys(self): a1 = object() - provider = providers.Dict({a1: 'i1'}, a2='i2') + provider = providers.Dict({a1: "i1"}, a2="i2") dict1 = provider() dict2 = provider() - self.assertEqual(dict1, {a1: 'i1', 'a2': 'i2'}) - self.assertEqual(dict2, {a1: 'i1', 'a2': 'i2'}) + self.assertEqual(dict1, {a1: "i1", "a2": "i2"}) + self.assertEqual(dict2, {a1: "i1", "a2": "i2"}) self.assertIsNot(dict1, dict2) def test_call_with_init_keyword_args(self): - provider = providers.Dict(a1='i1', a2='i2') + provider = providers.Dict(a1="i1", a2="i2") dict1 = provider() dict2 = provider() - self.assertEqual(dict1, {'a1': 'i1', 'a2': 'i2'}) - self.assertEqual(dict2, {'a1': 'i1', 'a2': 'i2'}) + self.assertEqual(dict1, {"a1": "i1", "a2": "i2"}) + self.assertEqual(dict2, {"a1": "i1", "a2": "i2"}) self.assertIsNot(dict1, dict2) def test_call_with_context_keyword_args(self): - provider = providers.Dict(a1='i1', a2='i2') + provider = providers.Dict(a1="i1", a2="i2") self.assertEqual( - provider(a3='i3', a4='i4'), - {'a1': 'i1', 'a2': 'i2', 'a3': 'i3', 'a4': 'i4'}, + provider(a3="i3", a4="i4"), + {"a1": "i1", "a2": "i2", "a3": "i3", "a4": "i4"}, ) def test_call_with_provider(self): provider = providers.Dict( - a1=providers.Factory(str, 'i1'), - a2=providers.Factory(str, 'i2'), + a1=providers.Factory(str, "i1"), + a2=providers.Factory(str, "i2"), ) - self.assertEqual(provider(), {'a1': 'i1', 'a2': 'i2'}) + self.assertEqual(provider(), {"a1": "i1", "a2": "i2"}) def test_fluent_interface(self): provider = providers.Dict() \ - .add_kwargs(a1='i1', a2='i2') - self.assertEqual(provider(), {'a1': 'i1', 'a2': 'i2'}) + .add_kwargs(a1="i1", a2="i2") + self.assertEqual(provider(), {"a1": "i1", "a2": "i2"}) def test_add_kwargs(self): provider = providers.Dict() \ - .add_kwargs(a1='i1') \ - .add_kwargs(a2='i2') - self.assertEqual(provider.kwargs, {'a1': 'i1', 'a2': 'i2'}) + .add_kwargs(a1="i1") \ + .add_kwargs(a2="i2") + self.assertEqual(provider.kwargs, {"a1": "i1", "a2": "i2"}) def test_add_kwargs_non_string_keys(self): a1 = object() a2 = object() provider = providers.Dict() \ - .add_kwargs({a1: 'i1'}) \ - .add_kwargs({a2: 'i2'}) - self.assertEqual(provider.kwargs, {a1: 'i1', a2: 'i2'}) + .add_kwargs({a1: "i1"}) \ + .add_kwargs({a2: "i2"}) + self.assertEqual(provider.kwargs, {a1: "i1", a2: "i2"}) def test_add_kwargs_string_and_non_string_keys(self): a2 = object() provider = providers.Dict() \ - .add_kwargs(a1='i1') \ - .add_kwargs({a2: 'i2'}) - self.assertEqual(provider.kwargs, {'a1': 'i1', a2: 'i2'}) + .add_kwargs(a1="i1") \ + .add_kwargs({a2: "i2"}) + self.assertEqual(provider.kwargs, {"a1": "i1", a2: "i2"}) def test_set_kwargs(self): provider = providers.Dict() \ - .add_kwargs(a1='i1', a2='i2') \ - .set_kwargs(a3='i3', a4='i4') - self.assertEqual(provider.kwargs, {'a3': 'i3', 'a4': 'i4'}) + .add_kwargs(a1="i1", a2="i2") \ + .set_kwargs(a3="i3", a4="i4") + self.assertEqual(provider.kwargs, {"a3": "i3", "a4": "i4"}) def test_set_kwargs_non_string_keys(self): a3 = object() a4 = object() provider = providers.Dict() \ - .add_kwargs(a1='i1', a2='i2') \ - .set_kwargs({a3: 'i3', a4: 'i4'}) - self.assertEqual(provider.kwargs, {a3: 'i3', a4: 'i4'}) + .add_kwargs(a1="i1", a2="i2") \ + .set_kwargs({a3: "i3", a4: "i4"}) + self.assertEqual(provider.kwargs, {a3: "i3", a4: "i4"}) def test_set_kwargs_string_and_non_string_keys(self): a3 = object() provider = providers.Dict() \ - .add_kwargs(a1='i1', a2='i2') \ - .set_kwargs({a3: 'i3'}, a4='i4') - self.assertEqual(provider.kwargs, {a3: 'i3', 'a4': 'i4'}) + .add_kwargs(a1="i1", a2="i2") \ + .set_kwargs({a3: "i3"}, a4="i4") + self.assertEqual(provider.kwargs, {a3: "i3", "a4": "i4"}) def test_clear_kwargs(self): provider = providers.Dict() \ - .add_kwargs(a1='i1', a2='i2') \ + .add_kwargs(a1="i1", a2="i2") \ .clear_kwargs() self.assertEqual(provider.kwargs, {}) def test_call_overridden(self): - provider = providers.Dict(a1='i1', a2='i2') - overriding_provider1 = providers.Dict(a2='i2', a3='i3') - overriding_provider2 = providers.Dict(a3='i3', a4='i4') + provider = providers.Dict(a1="i1", a2="i2") + overriding_provider1 = providers.Dict(a2="i2", a3="i3") + overriding_provider2 = providers.Dict(a3="i3", a4="i4") provider.override(overriding_provider1) provider.override(overriding_provider2) @@ -131,11 +131,11 @@ class DictTests(unittest.TestCase): instance2 = provider() self.assertIsNot(instance1, instance2) - self.assertEqual(instance1, {'a3': 'i3', 'a4': 'i4'}) - self.assertEqual(instance2, {'a3': 'i3', 'a4': 'i4'}) + self.assertEqual(instance1, {"a3": "i3", "a4": "i4"}) + self.assertEqual(instance2, {"a3": "i3", "a4": "i4"}) def test_deepcopy(self): - provider = providers.Dict(a1='i1', a2='i2') + provider = providers.Dict(a1="i1", a2="i2") provider_copy = providers.deepcopy(provider) @@ -144,8 +144,8 @@ class DictTests(unittest.TestCase): self.assertIsInstance(provider, providers.Dict) def test_deepcopy_from_memo(self): - provider = providers.Dict(a1='i1', a2='i2') - provider_copy_memo = providers.Dict(a1='i1', a2='i2') + provider = providers.Dict(a1="i1", a2="i2") + provider_copy_memo = providers.Dict(a1="i1", a2="i2") provider_copy = providers.deepcopy( provider, @@ -162,8 +162,8 @@ class DictTests(unittest.TestCase): provider.add_kwargs(d1=dependent_provider1, d2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['d1'] - dependent_provider_copy2 = provider_copy.kwargs['d2'] + dependent_provider_copy1 = provider_copy.kwargs["d1"] + dependent_provider_copy2 = provider_copy.kwargs["d2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -218,14 +218,14 @@ class DictTests(unittest.TestCase): self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider_copy, providers.Dict) - self.assertIs(provider.kwargs['stdin'], sys.stdin) - self.assertIs(provider.kwargs['stdout'], sys.stdout) - self.assertIs(provider.kwargs['stderr'], sys.stderr) + self.assertIs(provider.kwargs["stdin"], sys.stdin) + self.assertIs(provider.kwargs["stdout"], sys.stdout) + self.assertIs(provider.kwargs["stderr"], sys.stderr) def test_repr(self): provider = providers.Dict(a1=1, a2=2) self.assertEqual(repr(provider), - ''.format( + "".format( repr(provider.kwargs), hex(id(provider)))) diff --git a/tests/unit/providers/test_factories_py2_py3.py b/tests/unit/providers/test_factories_py2_py3.py index 29526889..c0ed5971 100644 --- a/tests/unit/providers/test_factories_py2_py3.py +++ b/tests/unit/providers/test_factories_py2_py3.py @@ -86,48 +86,48 @@ class FactoryTests(unittest.TestCase): self.assertIsInstance(instance2, Example) def test_call_with_init_positional_args(self): - provider = providers.Factory(Example, 'i1', 'i2') + provider = providers.Factory(Example, "i1", "i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIsNot(instance1, instance2) self.assertIsInstance(instance1, Example) self.assertIsInstance(instance2, Example) def test_call_with_init_keyword_args(self): - provider = providers.Factory(Example, init_arg1='i1', init_arg2='i2') + provider = providers.Factory(Example, init_arg1="i1", init_arg2="i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIsNot(instance1, instance2) self.assertIsInstance(instance1, Example) self.assertIsInstance(instance2, Example) def test_call_with_init_positional_and_keyword_args(self): - provider = providers.Factory(Example, 'i1', init_arg2='i2') + provider = providers.Factory(Example, "i1", init_arg2="i2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.init_arg1, 'i1') - self.assertEqual(instance1.init_arg2, 'i2') + self.assertEqual(instance1.init_arg1, "i1") + self.assertEqual(instance1.init_arg2, "i2") - self.assertEqual(instance2.init_arg1, 'i1') - self.assertEqual(instance2.init_arg2, 'i2') + self.assertEqual(instance2.init_arg1, "i1") + self.assertEqual(instance2.init_arg2, "i2") self.assertIsNot(instance1, instance2) self.assertIsInstance(instance1, Example) @@ -135,16 +135,16 @@ class FactoryTests(unittest.TestCase): def test_call_with_attributes(self): provider = providers.Factory(Example) - provider.add_attributes(attribute1='a1', attribute2='a2') + provider.add_attributes(attribute1="a1", attribute2="a2") instance1 = provider() instance2 = provider() - self.assertEqual(instance1.attribute1, 'a1') - self.assertEqual(instance1.attribute2, 'a2') + self.assertEqual(instance1.attribute1, "a1") + self.assertEqual(instance1.attribute2, "a2") - self.assertEqual(instance2.attribute1, 'a1') - self.assertEqual(instance2.attribute2, 'a2') + self.assertEqual(instance2.attribute1, "a1") + self.assertEqual(instance2.attribute2, "a2") self.assertIsNot(instance1, instance2) self.assertIsInstance(instance1, Example) @@ -331,8 +331,8 @@ class FactoryTests(unittest.TestCase): provider.add_kwargs(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['a1'] - dependent_provider_copy2 = provider_copy.kwargs['a2'] + dependent_provider_copy1 = provider_copy.kwargs["a1"] + dependent_provider_copy2 = provider_copy.kwargs["a2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -350,8 +350,8 @@ class FactoryTests(unittest.TestCase): provider.add_attributes(a1=dependent_provider1, a2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.attributes['a1'] - dependent_provider_copy2 = provider_copy.attributes['a2'] + dependent_provider_copy1 = provider_copy.attributes["a1"] + dependent_provider_copy2 = provider_copy.attributes["a2"] self.assertNotEqual(provider.attributes, provider_copy.attributes) @@ -388,15 +388,15 @@ class FactoryTests(unittest.TestCase): self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider_copy, providers.Factory) self.assertIs(provider.args[0], sys.stdin) - self.assertIs(provider.kwargs['a2'], sys.stdout) - self.assertIs(provider.attributes['a3'], sys.stderr) + self.assertIs(provider.kwargs["a2"], sys.stdout) + self.assertIs(provider.attributes["a3"], sys.stderr) def test_repr(self): provider = providers.Factory(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -419,8 +419,8 @@ class DelegatedFactoryTests(unittest.TestCase): provider = providers.DelegatedFactory(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -465,8 +465,8 @@ class AbstractFactoryTests(unittest.TestCase): provider = providers.AbstractFactory(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -552,12 +552,12 @@ class FactoryAggregateTests(unittest.TestCase): self.assertEqual( provider.factories, { - 'example_a': self.example_a_factory, - 'example_b': self.example_b_factory, + "example_a": self.example_a_factory, + "example_b": self.example_b_factory, }, ) - self.assertIsInstance(provider('example_a'), self.ExampleA) - self.assertIsInstance(provider('example_b'), self.ExampleB) + self.assertIsInstance(provider("example_a"), self.ExampleA) + self.assertIsInstance(provider("example_b"), self.ExampleB) def test_set_factories_with_non_string_keys(self): factory = providers.FactoryAggregate() @@ -594,9 +594,9 @@ class FactoryAggregateTests(unittest.TestCase): self.assertIs(provider.set_factories(example_a=self.example_a_factory), provider) def test_call(self): - object_a = self.factory_aggregate('example_a', + object_a = self.factory_aggregate("example_a", 1, 2, init_arg3=3, init_arg4=4) - object_b = self.factory_aggregate('example_b', + object_b = self.factory_aggregate("example_b", 11, 22, init_arg3=33, init_arg4=44) self.assertIsInstance(object_a, self.ExampleA) @@ -613,7 +613,7 @@ class FactoryAggregateTests(unittest.TestCase): def test_call_factory_name_as_kwarg(self): object_a = self.factory_aggregate( - factory_name='example_a', + factory_name="example_a", init_arg1=1, init_arg2=2, init_arg3=3, @@ -631,7 +631,7 @@ class FactoryAggregateTests(unittest.TestCase): def test_call_no_such_provider(self): with self.assertRaises(errors.NoSuchProviderError): - self.factory_aggregate('unknown') + self.factory_aggregate("unknown") def test_overridden(self): with self.assertRaises(errors.Error): @@ -684,7 +684,7 @@ class FactoryAggregateTests(unittest.TestCase): def test_repr(self): self.assertEqual(repr(self.factory_aggregate), - ''.format( + "".format( repr(self.factory_aggregate.factories), hex(id(self.factory_aggregate)))) diff --git a/tests/unit/providers/test_injections_py2_py3.py b/tests/unit/providers/test_injections_py2_py3.py index a1e2608b..c257f230 100644 --- a/tests/unit/providers/test_injections_py2_py3.py +++ b/tests/unit/providers/test_injections_py2_py3.py @@ -56,19 +56,19 @@ class PositionalInjectionTests(unittest.TestCase): class NamedInjectionTests(unittest.TestCase): def test_isinstance(self): - injection = providers.NamedInjection('name', 1) + injection = providers.NamedInjection("name", 1) self.assertIsInstance(injection, providers.Injection) def test_get_name(self): - injection = providers.NamedInjection('name', 123) - self.assertEqual(injection.get_name(), 'name') + injection = providers.NamedInjection("name", 123) + self.assertEqual(injection.get_name(), "name") def test_get_value_with_not_provider(self): - injection = providers.NamedInjection('name', 123) + injection = providers.NamedInjection("name", 123) self.assertEqual(injection.get_value(), 123) def test_get_value_with_factory(self): - injection = providers.NamedInjection('name', + injection = providers.NamedInjection("name", providers.Factory(object)) obj1 = injection.get_value() @@ -80,12 +80,12 @@ class NamedInjectionTests(unittest.TestCase): def test_get_original_value(self): provider = providers.Factory(object) - injection = providers.NamedInjection('name', provider) + injection = providers.NamedInjection("name", provider) self.assertIs(injection.get_original_value(), provider) def test_deepcopy(self): provider = providers.Factory(object) - injection = providers.NamedInjection('name', provider) + injection = providers.NamedInjection("name", provider) injection_copy = providers.deepcopy(injection) @@ -95,8 +95,8 @@ class NamedInjectionTests(unittest.TestCase): def test_deepcopy_memo(self): provider = providers.Factory(object) - injection = providers.NamedInjection('name', provider) - injection_copy_orig = providers.NamedInjection('name', provider) + injection = providers.NamedInjection("name", provider) + injection_copy_orig = providers.NamedInjection("name", provider) injection_copy = providers.deepcopy( injection, {id(injection): injection_copy_orig}) diff --git a/tests/unit/providers/test_list_py2_py3.py b/tests/unit/providers/test_list_py2_py3.py index 733714a1..a234ec43 100644 --- a/tests/unit/providers/test_list_py2_py3.py +++ b/tests/unit/providers/test_list_py2_py3.py @@ -17,20 +17,20 @@ class ListTests(unittest.TestCase): self.assertIsInstance(provider.provided, providers.ProvidedInstance) def test_call_with_init_positional_args(self): - provider = providers.List('i1', 'i2') + provider = providers.List("i1", "i2") list1 = provider() list2 = provider() - self.assertEqual(list1, ['i1', 'i2']) - self.assertEqual(list2, ['i1', 'i2']) + self.assertEqual(list1, ["i1", "i2"]) + self.assertEqual(list2, ["i1", "i2"]) self.assertIsNot(list1, list2) def test_call_with_context_args(self): - provider = providers.List('i1', 'i2') + provider = providers.List("i1", "i2") - self.assertEqual(provider('i3', 'i4'), ['i1', 'i2', 'i3', 'i4']) + self.assertEqual(provider("i3", "i4"), ["i1", "i2", "i3", "i4"]) def test_fluent_interface(self): provider = providers.List() \ @@ -134,7 +134,7 @@ class ListTests(unittest.TestCase): provider = providers.List(1, 2) self.assertEqual(repr(provider), - ''.format( + "".format( repr(list(provider.args)), hex(id(provider)))) diff --git a/tests/unit/providers/test_provided_instance_py2_py3.py b/tests/unit/providers/test_provided_instance_py2_py3.py index 8cad2d19..98b7b6b3 100644 --- a/tests/unit/providers/test_provided_instance_py2_py3.py +++ b/tests/unit/providers/test_provided_instance_py2_py3.py @@ -32,7 +32,7 @@ class Client: class Container(containers.DeclarativeContainer): - service = providers.Singleton(Service, value='foo') + service = providers.Singleton(Service, value="foo") client_attribute = providers.Factory( Client, @@ -74,30 +74,30 @@ class ProvidedInstanceTests(unittest.TestCase): def test_attribute(self): client = self.container.client_attribute() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_item(self): client = self.container.client_item() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_attribute_item(self): client = self.container.client_attribute_item() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_method_call(self): client = self.container.client_method_call() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_method_closure_call(self): client = self.container.client_method_closure_call() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_provided_call(self): client = self.container.client_provided_call() - self.assertEqual(client.value, 'foo') + self.assertEqual(client.value, "foo") def test_call_overridden(self): - value = 'bar' + value = "bar" with self.container.service.override(Service(value)): self.assertEqual(self.container.client_attribute().value, value) self.assertEqual(self.container.client_item().value, value) @@ -107,21 +107,21 @@ class ProvidedInstanceTests(unittest.TestCase): def test_repr_provided_instance(self): provider = self.container.service.provided self.assertEqual( - 'ProvidedInstance(\'{0}\')'.format(repr(self.container.service)), + "ProvidedInstance(\"{0}\")".format(repr(self.container.service)), repr(provider), ) def test_repr_attribute_getter(self): provider = self.container.service.provided.value self.assertEqual( - 'AttributeGetter(\'value\')', + "AttributeGetter(\"value\")", repr(provider), ) def test_repr_item_getter(self): - provider = self.container.service.provided['test-test'] + provider = self.container.service.provided["test-test"] self.assertEqual( - 'ItemGetter(\'test-test\')', + "ItemGetter(\"test-test\")", repr(provider), ) @@ -139,21 +139,21 @@ class LazyInitTests(unittest.TestCase): provides = providers.Object(object()) provider = providers.AttributeGetter() provider.set_provides(provides) - provider.set_name('__dict__') + provider.set_name("__dict__") self.assertIs(provider.provides, provides) - self.assertEqual(provider.name, '__dict__') + self.assertEqual(provider.name, "__dict__") self.assertIs(provider.set_provides(providers.Provider()), provider) - self.assertIs(provider.set_name('__dict__'), provider) + self.assertIs(provider.set_name("__dict__"), provider) def test_item_getter(self): - provides = providers.Object({'foo': 'bar'}) + provides = providers.Object({"foo": "bar"}) provider = providers.ItemGetter() provider.set_provides(provides) - provider.set_name('foo') + provider.set_name("foo") self.assertIs(provider.provides, provides) - self.assertEqual(provider.name, 'foo') + self.assertEqual(provider.name, "foo") self.assertIs(provider.set_provides(providers.Provider()), provider) - self.assertIs(provider.set_name('foo'), provider) + self.assertIs(provider.set_name("foo"), provider) def test_method_caller(self): provides = providers.Object(lambda: 42) @@ -167,25 +167,25 @@ class LazyInitTests(unittest.TestCase): class ProvidedInstancePuzzleTests(unittest.TestCase): def test_puzzled(self): - service = providers.Singleton(Service, value='foo-bar') + service = providers.Singleton(Service, value="foo-bar") dependency = providers.Object( { - 'a': { - 'b': { - 'c1': 10, - 'c2': lambda arg: {'arg': arg} + "a": { + "b": { + "c1": 10, + "c2": lambda arg: {"arg": arg} }, }, }, ) test_list = providers.List( - dependency.provided['a']['b']['c1'], - dependency.provided['a']['b']['c2'].call(22)['arg'], - dependency.provided['a']['b']['c2'].call(service)['arg'], - dependency.provided['a']['b']['c2'].call(service)['arg'].value, - dependency.provided['a']['b']['c2'].call(service)['arg'].get_value.call(), + dependency.provided["a"]["b"]["c1"], + dependency.provided["a"]["b"]["c2"].call(22)["arg"], + dependency.provided["a"]["b"]["c2"].call(service)["arg"], + dependency.provided["a"]["b"]["c2"].call(service)["arg"].value, + dependency.provided["a"]["b"]["c2"].call(service)["arg"].get_value.call(), ) result = test_list() @@ -196,8 +196,8 @@ class ProvidedInstancePuzzleTests(unittest.TestCase): 10, 22, service(), - 'foo-bar', - 'foo-bar', + "foo-bar", + "foo-bar", ], ) diff --git a/tests/unit/providers/test_resource_py35.py b/tests/unit/providers/test_resource_py35.py index ae8074b3..67f63821 100644 --- a/tests/unit/providers/test_resource_py35.py +++ b/tests/unit/providers/test_resource_py35.py @@ -12,7 +12,7 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) import sys @@ -173,7 +173,7 @@ class ResourceTests(unittest.TestCase): class TestResource(resources.Resource): def init(self): ... - self.assertTrue(hasattr(TestResource(), 'shutdown')) + self.assertTrue(hasattr(TestResource(), "shutdown")) def test_init_not_callable(self): provider = providers.Resource(1) @@ -229,15 +229,15 @@ class ResourceTests(unittest.TestCase): self.assertFalse(provider.initialized) def test_call_with_context_args(self): - provider = providers.Resource(init_fn, 'i1', 'i2') - self.assertEqual(provider('i3', i4=4), (('i1', 'i2', 'i3'), {'i4': 4})) + provider = providers.Resource(init_fn, "i1", "i2") + self.assertEqual(provider("i3", i4=4), (("i1", "i2", "i3"), {"i4": 4})) def test_fluent_interface(self): provider = providers.Resource(init_fn) \ .add_args(1, 2) \ .add_kwargs(a3=3, a4=4) - self.assertEqual(provider(), ((1, 2), {'a3': 3, 'a4': 4})) + self.assertEqual(provider(), ((1, 2), {"a3": 3, "a4": 4})) def test_set_args(self): provider = providers.Resource(init_fn) \ @@ -253,13 +253,13 @@ class ResourceTests(unittest.TestCase): def test_set_kwargs(self): provider = providers.Resource(init_fn) \ - .add_kwargs(a1='i1', a2='i2') \ - .set_kwargs(a3='i3', a4='i4') - self.assertEqual(provider.kwargs, {'a3': 'i3', 'a4': 'i4'}) + .add_kwargs(a1="i1", a2="i2") \ + .set_kwargs(a3="i3", a4="i4") + self.assertEqual(provider.kwargs, {"a3": "i3", "a4": "i4"}) def test_clear_kwargs(self): provider = providers.Resource(init_fn) \ - .add_kwargs(a1='i1', a2='i2') \ + .add_kwargs(a1="i1", a2="i2") \ .clear_kwargs() self.assertEqual(provider.kwargs, {}) @@ -333,8 +333,8 @@ class ResourceTests(unittest.TestCase): provider.add_kwargs(d1=dependent_provider1, d2=dependent_provider2) provider_copy = providers.deepcopy(provider) - dependent_provider_copy1 = provider_copy.kwargs['d1'] - dependent_provider_copy2 = provider_copy.kwargs['d2'] + dependent_provider_copy1 = provider_copy.kwargs["d1"] + dependent_provider_copy2 = provider_copy.kwargs["d2"] self.assertNotEqual(provider.kwargs, provider_copy.kwargs) @@ -377,7 +377,7 @@ class ResourceTests(unittest.TestCase): self.assertEqual( repr(provider), - ''.format( + "".format( repr(init_fn), hex(id(provider)), ) @@ -506,7 +506,7 @@ class AsyncResourceTest(AsyncTestCase): class TestAsyncResource(resources.AsyncResource): async def init(self): ... - self.assertTrue(hasattr(TestAsyncResource(), 'shutdown')) + self.assertTrue(hasattr(TestAsyncResource(), "shutdown")) self.assertTrue(inspect.iscoroutinefunction(TestAsyncResource.shutdown)) def test_init_with_error(self): @@ -566,11 +566,11 @@ class AsyncResourceTest(AsyncTestCase): # See: https://github.com/ets-labs/python-dependency-injector/issues/361 async def init_db_connection(db_url: str): await asyncio.sleep(0.001) - yield {'connection': 'ok', 'url': db_url} + yield {"connection": "ok", "url": db_url} async def init_user_session(db): await asyncio.sleep(0.001) - yield {'session': 'ok', 'db': db} + yield {"session": "ok", "db": db} class Container(containers.DeclarativeContainer): config = providers.Configuration() @@ -586,7 +586,7 @@ class AsyncResourceTest(AsyncTestCase): ) async def main(): - container = Container(config={'db_url': 'postgres://...'}) + container = Container(config={"db_url": "postgres://..."}) try: return await container.user_session() finally: @@ -596,7 +596,7 @@ class AsyncResourceTest(AsyncTestCase): self.assertEqual( result, - {'session': 'ok', 'db': {'connection': 'ok', 'url': 'postgres://...'}}, + {"session": "ok", "db": {"connection": "ok", "url": "postgres://..."}}, ) def test_init_and_shutdown_methods(self): diff --git a/tests/unit/providers/test_selector_py2_py3.py b/tests/unit/providers/test_selector_py2_py3.py index 14ad32e3..8ccd4aca 100644 --- a/tests/unit/providers/test_selector_py2_py3.py +++ b/tests/unit/providers/test_selector_py2_py3.py @@ -24,10 +24,10 @@ class SelectorTests(unittest.TestCase): provider.set_selector(self.selector) provider.set_providers(one=one, two=two) - self.assertEqual(provider.providers, {'one': one, 'two': two}) - with self.selector.override('one'): + self.assertEqual(provider.providers, {"one": one, "two": two}) + with self.selector.override("one"): self.assertEqual(provider(), one()) - with self.selector.override('two'): + with self.selector.override("two"): self.assertEqual(provider(), two()) def test_set_selector_returns_self(self): @@ -49,10 +49,10 @@ class SelectorTests(unittest.TestCase): two=providers.Object(2), ) - with self.selector.override('one'): + with self.selector.override("one"): self.assertEqual(provider(), 1) - with self.selector.override('two'): + with self.selector.override("two"): self.assertEqual(provider(), 2) def test_call_undefined_provider(self): @@ -62,7 +62,7 @@ class SelectorTests(unittest.TestCase): two=providers.Object(2), ) - with self.selector.override('three'): + with self.selector.override("three"): with self.assertRaises(errors.Error): provider() @@ -79,7 +79,7 @@ class SelectorTests(unittest.TestCase): def test_call_any_callable(self): provider = providers.Selector( - functools.partial(next, itertools.cycle(['one', 'two'])), + functools.partial(next, itertools.cycle(["one", "two"])), one=providers.Object(1), two=providers.Object(2), ) @@ -95,11 +95,11 @@ class SelectorTests(unittest.TestCase): one=providers.Callable(lambda *args, **kwargs: (args, kwargs)), ) - with self.selector.override('one'): + with self.selector.override("one"): args, kwargs = provider(1, 2, three=3, four=4) self.assertEqual(args, (1, 2)) - self.assertEqual(kwargs, {'three': 3, 'four': 4}) + self.assertEqual(kwargs, {"three": 3, "four": 4}) def test_getattr(self): provider_one = providers.Object(1) @@ -135,7 +135,7 @@ class SelectorTests(unittest.TestCase): provider.override(overriding_provider1) provider.override(overriding_provider2) - with self.selector.override('sample'): + with self.selector.override("sample"): self.assertEqual(provider(), 3) def test_providers_attribute(self): @@ -148,7 +148,7 @@ class SelectorTests(unittest.TestCase): two=provider_two, ) - self.assertEqual(provider.providers, {'one': provider_one, 'two': provider_two}) + self.assertEqual(provider.providers, {"one": provider_one, "two": provider_two}) def test_deepcopy(self): provider = providers.Selector(self.selector) @@ -198,13 +198,13 @@ class SelectorTests(unittest.TestCase): self.assertIsNot(provider, provider_copy) self.assertIsInstance(provider_copy, providers.Selector) - with self.selector.override('stdin'): + with self.selector.override("stdin"): self.assertIs(provider(), sys.stdin) - with self.selector.override('stdout'): + with self.selector.override("stdout"): self.assertIs(provider(), sys.stdout) - with self.selector.override('stderr'): + with self.selector.override("stderr"): self.assertIs(provider(), sys.stderr) def test_repr(self): @@ -215,9 +215,9 @@ class SelectorTests(unittest.TestCase): ) self.assertIn( - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -36,8 +36,8 @@ class DelegatedSingletonTests(_BaseSingletonTestCase, unittest.TestCase): provider = self.singleton_cls(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -50,8 +50,8 @@ class ThreadLocalSingletonTests(_BaseSingletonTestCase, unittest.TestCase): provider = providers.ThreadLocalSingleton(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -92,8 +92,8 @@ class DelegatedThreadLocalSingletonTests(_BaseSingletonTestCase, provider = self.singleton_cls(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -106,8 +106,8 @@ class ThreadSafeSingletonTests(_BaseSingletonTestCase, unittest.TestCase): provider = self.singleton_cls(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -125,8 +125,8 @@ class DelegatedThreadSafeSingletonTests(_BaseSingletonTestCase, provider = self.singleton_cls(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) @@ -185,8 +185,8 @@ class AbstractSingletonTests(unittest.TestCase): provider = providers.AbstractSingleton(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) diff --git a/tests/unit/providers/test_singletons_py3.py b/tests/unit/providers/test_singletons_py3.py index 47eb9489..6a09f763 100644 --- a/tests/unit/providers/test_singletons_py3.py +++ b/tests/unit/providers/test_singletons_py3.py @@ -13,8 +13,8 @@ class ContextLocalSingletonTests(_BaseSingletonTestCase, unittest.TestCase): provider = providers.ContextLocalSingleton(Example) self.assertEqual(repr(provider), - ''.format( + "".format( repr(Example), hex(id(provider)))) diff --git a/tests/unit/providers/test_traversal_py3.py b/tests/unit/providers/test_traversal_py3.py index f32bd913..597a0119 100644 --- a/tests/unit/providers/test_traversal_py3.py +++ b/tests/unit/providers/test_traversal_py3.py @@ -101,7 +101,7 @@ class ProviderTests(unittest.TestCase): class ObjectTests(unittest.TestCase): def test_traversal(self): - provider = providers.Object('string') + provider = providers.Object("string") all_providers = list(provider.traverse()) self.assertEqual(len(all_providers), 0) @@ -250,9 +250,9 @@ class CallableTests(unittest.TestCase): self.assertEqual(len(all_providers), 0) def test_traverse_args(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Callable(list, 'foo', provider1, provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Callable(list, "foo", provider1, provider2) all_providers = list(provider.traverse()) @@ -261,9 +261,9 @@ class CallableTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_kwargs(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Callable(dict, foo='foo', bar=provider1, baz=provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Callable(dict, foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -272,10 +272,10 @@ class CallableTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_overridden(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") - provider = providers.Callable(dict, 'foo') + provider = providers.Callable(dict, "foo") provider.override(provider1) provider.override(provider2) @@ -287,8 +287,8 @@ class CallableTests(unittest.TestCase): def test_traverse_provides(self): provider1 = providers.Callable(list) - provider2 = providers.Object('bar') - provider3 = providers.Object('baz') + provider2 = providers.Object("bar") + provider3 = providers.Object("baz") provider = providers.Callable(provider1, provider2) provider.override(provider3) @@ -304,7 +304,7 @@ class CallableTests(unittest.TestCase): class ConfigurationTests(unittest.TestCase): def test_traverse(self): - config = providers.Configuration(default={'option1': {'option2': 'option2'}}) + config = providers.Configuration(default={"option1": {"option2": "option2"}}) option1 = config.option1 option2 = config.option1.option2 option3 = config.option1[config.option1.option2] @@ -327,7 +327,7 @@ class ConfigurationTests(unittest.TestCase): self.assertIn(option, all_providers) def test_traverse_overridden(self): - options = {'option1': {'option2': 'option2'}} + options = {"option1": {"option2": "option2"}} config = providers.Configuration() config.from_dict(options) @@ -339,7 +339,7 @@ class ConfigurationTests(unittest.TestCase): self.assertIs(overridden, config.last_overriding) def test_traverse_overridden_option_1(self): - options = {'option2': 'option2'} + options = {"option2": "option2"} config = providers.Configuration() config.option1.from_dict(options) @@ -350,7 +350,7 @@ class ConfigurationTests(unittest.TestCase): self.assertIn(config.last_overriding, all_providers) def test_traverse_overridden_option_2(self): - options = {'option2': 'option2'} + options = {"option2": "option2"} config = providers.Configuration() config.option1.from_dict(options) @@ -367,9 +367,9 @@ class FactoryTests(unittest.TestCase): self.assertEqual(len(all_providers), 0) def test_traverse_args(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Factory(list, 'foo', provider1, provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Factory(list, "foo", provider1, provider2) all_providers = list(provider.traverse()) @@ -378,9 +378,9 @@ class FactoryTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_kwargs(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Factory(dict, foo='foo', bar=provider1, baz=provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Factory(dict, foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -389,10 +389,10 @@ class FactoryTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_attributes(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") provider = providers.Factory(dict) - provider.add_attributes(foo='foo', bar=provider1, baz=provider2) + provider.add_attributes(foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -401,10 +401,10 @@ class FactoryTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_overridden(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") - provider = providers.Factory(dict, 'foo') + provider = providers.Factory(dict, "foo") provider.override(provider1) provider.override(provider2) @@ -416,8 +416,8 @@ class FactoryTests(unittest.TestCase): def test_traverse_provides(self): provider1 = providers.Callable(list) - provider2 = providers.Object('bar') - provider3 = providers.Object('baz') + provider2 = providers.Object("bar") + provider3 = providers.Object("baz") provider = providers.Factory(provider1, provider2) provider.override(provider3) @@ -452,9 +452,9 @@ class BaseSingletonTests(unittest.TestCase): self.assertEqual(len(all_providers), 0) def test_traverse_args(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Singleton(list, 'foo', provider1, provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Singleton(list, "foo", provider1, provider2) all_providers = list(provider.traverse()) @@ -463,9 +463,9 @@ class BaseSingletonTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_kwargs(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Singleton(dict, foo='foo', bar=provider1, baz=provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Singleton(dict, foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -474,10 +474,10 @@ class BaseSingletonTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_attributes(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") provider = providers.Singleton(dict) - provider.add_attributes(foo='foo', bar=provider1, baz=provider2) + provider.add_attributes(foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -486,10 +486,10 @@ class BaseSingletonTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_overridden(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") - provider = providers.Singleton(dict, 'foo') + provider = providers.Singleton(dict, "foo") provider.override(provider1) provider.override(provider2) @@ -501,8 +501,8 @@ class BaseSingletonTests(unittest.TestCase): def test_traverse_provides(self): provider1 = providers.Callable(list) - provider2 = providers.Object('bar') - provider3 = providers.Object('baz') + provider2 = providers.Object("bar") + provider3 = providers.Object("baz") provider = providers.Singleton(provider1, provider2) provider.override(provider3) @@ -518,9 +518,9 @@ class BaseSingletonTests(unittest.TestCase): class ListTests(unittest.TestCase): def test_traverse_args(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.List('foo', provider1, provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.List("foo", provider1, provider2) all_providers = list(provider.traverse()) @@ -529,11 +529,11 @@ class ListTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_overridden(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") provider3 = providers.List(provider1, provider2) - provider = providers.List('foo') + provider = providers.List("foo") provider.override(provider3) all_providers = list(provider.traverse()) @@ -547,9 +547,9 @@ class ListTests(unittest.TestCase): class DictTests(unittest.TestCase): def test_traverse_kwargs(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Dict(foo='foo', bar=provider1, baz=provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Dict(foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -558,11 +558,11 @@ class DictTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_overridden(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") provider3 = providers.Dict(bar=provider1, baz=provider2) - provider = providers.Dict(foo='foo') + provider = providers.Dict(foo="foo") provider.override(provider3) all_providers = list(provider.traverse()) @@ -581,9 +581,9 @@ class ResourceTests(unittest.TestCase): self.assertEqual(len(all_providers), 0) def test_traverse_args(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Resource(list, 'foo', provider1, provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Resource(list, "foo", provider1, provider2) all_providers = list(provider.traverse()) @@ -592,9 +592,9 @@ class ResourceTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_kwargs(self): - provider1 = providers.Object('bar') - provider2 = providers.Object('baz') - provider = providers.Resource(dict, foo='foo', bar=provider1, baz=provider2) + provider1 = providers.Object("bar") + provider2 = providers.Object("baz") + provider = providers.Resource(dict, foo="foo", bar=provider1, baz=provider2) all_providers = list(provider.traverse()) @@ -606,7 +606,7 @@ class ResourceTests(unittest.TestCase): provider1 = providers.Resource(list) provider2 = providers.Resource(tuple) - provider = providers.Resource(dict, 'foo') + provider = providers.Resource(dict, "foo") provider.override(provider1) provider.override(provider2) @@ -676,7 +676,7 @@ class ContainerTests(unittest.TestCase): class SelectorTests(unittest.TestCase): def test_traverse(self): - switch = lambda: 'provider1' + switch = lambda: "provider1" provider1 = providers.Callable(list) provider2 = providers.Callable(dict) @@ -693,7 +693,7 @@ class SelectorTests(unittest.TestCase): self.assertIn(provider2, all_providers) def test_traverse_switch(self): - switch = providers.Callable(lambda: 'provider1') + switch = providers.Callable(lambda: "provider1") provider1 = providers.Callable(list) provider2 = providers.Callable(dict) @@ -713,10 +713,10 @@ class SelectorTests(unittest.TestCase): def test_traverse_overridden(self): provider1 = providers.Callable(list) provider2 = providers.Callable(dict) - selector1 = providers.Selector(lambda: 'provider1', provider1=provider1) + selector1 = providers.Selector(lambda: "provider1", provider1=provider1) provider = providers.Selector( - lambda: 'provider2', + lambda: "provider2", provider2=provider2, ) provider.override(selector1) @@ -788,7 +788,7 @@ class ItemGetterTests(unittest.TestCase): def test_traverse(self): provider1 = providers.Provider() provided = provider1.provided - provider = provided['item'] + provider = provided["item"] all_providers = list(provider.traverse()) @@ -801,7 +801,7 @@ class ItemGetterTests(unittest.TestCase): provided = provider1.provided provider2 = providers.Provider() - provider = provided['item'] + provider = provided["item"] provider.override(provider2) all_providers = list(provider.traverse()) @@ -832,7 +832,7 @@ class MethodCallerTests(unittest.TestCase): provided = provider1.provided method = provided.method provider2 = providers.Provider() - provider = method.call('foo', provider2) + provider = method.call("foo", provider2) all_providers = list(provider.traverse()) @@ -847,7 +847,7 @@ class MethodCallerTests(unittest.TestCase): provided = provider1.provided method = provided.method provider2 = providers.Provider() - provider = method.call(foo='foo', bar=provider2) + provider = method.call(foo="foo", bar=provider2) all_providers = list(provider.traverse()) diff --git a/tests/unit/providers/test_utils_py2_py3.py b/tests/unit/providers/test_utils_py2_py3.py index 4cebd190..3ff105a3 100644 --- a/tests/unit/providers/test_utils_py2_py3.py +++ b/tests/unit/providers/test_utils_py2_py3.py @@ -17,7 +17,7 @@ class IsProviderTests(unittest.TestCase): self.assertFalse(providers.is_provider(providers.Provider)) def test_with_string(self): - self.assertFalse(providers.is_provider('some_string')) + self.assertFalse(providers.is_provider("some_string")) def test_with_object(self): self.assertFalse(providers.is_provider(object())) @@ -50,7 +50,7 @@ class EnsureIsProviderTests(unittest.TestCase): def test_with_string(self): self.assertRaises(errors.Error, providers.ensure_is_provider, - 'some_string') + "some_string") def test_with_object(self): self.assertRaises(errors.Error, providers.ensure_is_provider, object()) diff --git a/tests/unit/samples/schemasample/services.py b/tests/unit/samples/schemasample/services.py index 338888e3..7f2013c3 100644 --- a/tests/unit/samples/schemasample/services.py +++ b/tests/unit/samples/schemasample/services.py @@ -11,7 +11,7 @@ class BaseService: def __init__(self) -> None: self.logger = logging.getLogger( - f'{__name__}.{self.__class__.__name__}', + f"{__name__}.{self.__class__.__name__}", ) @@ -22,8 +22,8 @@ class UserService(BaseService): super().__init__() def get_user(self, email: str) -> Dict[str, str]: - self.logger.debug('User %s has been found in database', email) - return {'email': email, 'password_hash': '...'} + self.logger.debug("User %s has been found in database", email) + return {"email": email, "password_hash": "..."} class AuthService(BaseService): @@ -36,8 +36,8 @@ class AuthService(BaseService): def authenticate(self, user: Dict[str, str], password: str) -> None: assert password is not None self.logger.debug( - 'User %s has been successfully authenticated', - user['email'], + "User %s has been successfully authenticated", + user["email"], ) @@ -50,7 +50,7 @@ class PhotoService(BaseService): def upload_photo(self, user: Dict[str, str], photo_path: str) -> None: self.logger.debug( - 'Photo %s has been successfully uploaded by user %s', + "Photo %s has been successfully uploaded by user %s", photo_path, - user['email'], + user["email"], ) diff --git a/tests/unit/samples/wiringfastapi/web.py b/tests/unit/samples/wiringfastapi/web.py index 2cbd4f50..3cee5450 100644 --- a/tests/unit/samples/wiringfastapi/web.py +++ b/tests/unit/samples/wiringfastapi/web.py @@ -9,7 +9,7 @@ from dependency_injector.wiring import inject, Provide class Service: async def process(self) -> str: - return 'Ok' + return "Ok" class Container(containers.DeclarativeContainer): @@ -21,19 +21,19 @@ app = FastAPI() security = HTTPBasic() -@app.api_route('/') +@app.api_route("/") @inject async def index(service: Service = Depends(Provide[Container.service])): result = await service.process() - return {'result': result} + return {"result": result} -@app.get('/auth') +@app.get("/auth") @inject def read_current_user( credentials: HTTPBasicCredentials = Depends(security) ): - return {'username': credentials.username, 'password': credentials.password} + return {"username": credentials.username, "password": credentials.password} container = Container() diff --git a/tests/unit/samples/wiringflask/web.py b/tests/unit/samples/wiringflask/web.py index 59b5d004..fe6e39dc 100644 --- a/tests/unit/samples/wiringflask/web.py +++ b/tests/unit/samples/wiringflask/web.py @@ -1,5 +1,3 @@ -import sys - from flask import Flask, jsonify, request, current_app, session, g from flask import _request_ctx_stack, _app_ctx_stack from dependency_injector import containers, providers @@ -12,7 +10,7 @@ _request_ctx_stack, _app_ctx_stack # noqa class Service: def process(self) -> str: - return 'Ok' + return "Ok" class Container(containers.DeclarativeContainer): @@ -23,12 +21,12 @@ class Container(containers.DeclarativeContainer): app = Flask(__name__) -@app.route('/') +@app.route("/") @inject def index(service: Service = Provide[Container.service]): result = service.process() - return jsonify({'result': result}) + return jsonify({"result": result}) container = Container() -container.wire(modules=[sys.modules[__name__]]) +container.wire(modules=[__name__]) diff --git a/tests/unit/samples/wiringsamples/imports.py b/tests/unit/samples/wiringsamples/imports.py index 243c9117..37fa8ebe 100644 --- a/tests/unit/samples/wiringsamples/imports.py +++ b/tests/unit/samples/wiringsamples/imports.py @@ -2,7 +2,7 @@ import sys -if 'pypy' not in sys.version.lower(): +if "pypy" not in sys.version.lower(): import numpy # noqa from numpy import * # noqa diff --git a/tests/unit/samples/wiringsamples/module.py b/tests/unit/samples/wiringsamples/module.py index e1ccc112..3925b295 100644 --- a/tests/unit/samples/wiringsamples/module.py +++ b/tests/unit/samples/wiringsamples/module.py @@ -96,7 +96,7 @@ def test_provider_provider(service_provider: Callable[..., Service] = Provider[C @inject -def test_provided_instance(some_value: int = Provide[Container.service.provided.foo['bar'].call()]): +def test_provided_instance(some_value: int = Provide[Container.service.provided.foo["bar"].call()]): return some_value diff --git a/tests/unit/samples/wiringsamples/queuemodule.py b/tests/unit/samples/wiringsamples/queuemodule.py index 5849a7bd..6cdfb1b2 100644 --- a/tests/unit/samples/wiringsamples/queuemodule.py +++ b/tests/unit/samples/wiringsamples/queuemodule.py @@ -2,4 +2,4 @@ from queue import Queue -__all__ = ('Queue',) +__all__ = ("Queue",) diff --git a/tests/unit/samples/wiringstringidssamples/asyncinjections.py b/tests/unit/samples/wiringstringidssamples/asyncinjections.py index 6ea88eb2..41529379 100644 --- a/tests/unit/samples/wiringstringidssamples/asyncinjections.py +++ b/tests/unit/samples/wiringstringidssamples/asyncinjections.py @@ -36,15 +36,15 @@ class Container(containers.DeclarativeContainer): @inject async def async_injection( - resource1: object = Provide['resource1'], - resource2: object = Provide['resource2'], + resource1: object = Provide["resource1"], + resource2: object = Provide["resource2"], ): return resource1, resource2 @inject async def async_injection_with_closing( - resource1: object = Closing[Provide['resource1']], - resource2: object = Closing[Provide['resource2']], + resource1: object = Closing[Provide["resource1"]], + resource2: object = Closing[Provide["resource2"]], ): return resource1, resource2 diff --git a/tests/unit/samples/wiringstringidssamples/module.py b/tests/unit/samples/wiringstringidssamples/module.py index e56b7892..0e3708fe 100644 --- a/tests/unit/samples/wiringstringidssamples/module.py +++ b/tests/unit/samples/wiringstringidssamples/module.py @@ -19,58 +19,58 @@ from .container import Container from .service import Service -service: Service = Provide['service'] -service_provider: Callable[..., Service] = Provider['service'] -undefined: Callable = Provide['undefined'] +service: Service = Provide["service"] +service_provider: Callable[..., Service] = Provider["service"] +undefined: Callable = Provide["undefined"] class TestClass: - service: Service = Provide['service'] - service_provider: Callable[..., Service] = Provider['service'] - undefined: Callable = Provide['undefined'] + service: Service = Provide["service"] + service_provider: Callable[..., Service] = Provider["service"] + undefined: Callable = Provide["undefined"] @inject - def __init__(self, service: Service = Provide['service']): + def __init__(self, service: Service = Provide["service"]): self.service = service @inject - def method(self, service: Service = Provide['service']): + def method(self, service: Service = Provide["service"]): return service @classmethod @inject - def class_method(cls, service: Service = Provide['service']): + def class_method(cls, service: Service = Provide["service"]): return service @staticmethod @inject - def static_method(service: Service = Provide['service']): + def static_method(service: Service = Provide["service"]): return service @inject -def test_function(service: Service = Provide['service']): +def test_function(service: Service = Provide["service"]): return service @inject -def test_function_provider(service_provider: Callable[..., Service] = Provider['service']): +def test_function_provider(service_provider: Callable[..., Service] = Provider["service"]): service = service_provider() return service @inject def test_config_value( - value_int: int = Provide['config.a.b.c', as_int()], - value_float: float = Provide['config.a.b.c', as_float()], - value_str: str = Provide['config.a.b.c', as_(str)], - value_decimal: Decimal = Provide['config.a.b.c', as_(Decimal)], - value_required: str = Provide['config.a.b.c', required()], - value_required_int: int = Provide['config.a.b.c', required().as_int()], - value_required_float: float = Provide['config.a.b.c', required().as_float()], - value_required_str: str = Provide['config.a.b.c', required().as_(str)], - value_required_decimal: str = Provide['config.a.b.c', required().as_(Decimal)], + value_int: int = Provide["config.a.b.c", as_int()], + value_float: float = Provide["config.a.b.c", as_float()], + value_str: str = Provide["config.a.b.c", as_(str)], + value_decimal: Decimal = Provide["config.a.b.c", as_(Decimal)], + value_required: str = Provide["config.a.b.c", required()], + value_required_int: int = Provide["config.a.b.c", required().as_int()], + value_required_float: float = Provide["config.a.b.c", required().as_float()], + value_required_str: str = Provide["config.a.b.c", required().as_(str)], + value_required_decimal: str = Provide["config.a.b.c", required().as_(Decimal)], ): return ( value_int, @@ -87,36 +87,36 @@ def test_config_value( @inject def test_config_value_required_undefined( - value_required: int = Provide['config.a.b.c', required()], + value_required: int = Provide["config.a.b.c", required()], ): return value_required @inject -def test_provide_provider(service_provider: Callable[..., Service] = Provide['service.provider']): +def test_provide_provider(service_provider: Callable[..., Service] = Provide["service.provider"]): service = service_provider() return service @inject -def test_provided_instance(some_value: int = Provide['service', provided().foo['bar'].call()]): +def test_provided_instance(some_value: int = Provide["service", provided().foo["bar"].call()]): return some_value @inject -def test_subcontainer_provider(some_value: int = Provide['sub.int_object']): +def test_subcontainer_provider(some_value: int = Provide["sub.int_object"]): return some_value @inject -def test_config_invariant(some_value: int = Provide['config.option', invariant('config.switch')]): +def test_config_invariant(some_value: int = Provide["config.option", invariant("config.switch")]): return some_value @inject def test_provide_from_different_containers( - service: Service = Provide['service'], - some_value: int = Provide['int_object'], + service: Service = Provide["service"], + some_value: int = Provide["int_object"], ): return service, some_value @@ -131,9 +131,9 @@ class ClassDecorator: @ClassDecorator @inject -def test_class_decorator(service: Service = Provide['service']): +def test_class_decorator(service: Service = Provide["service"]): return service -def test_container(container: Container = Provide['']): +def test_container(container: Container = Provide[""]): return container.service() diff --git a/tests/unit/samples/wiringstringidssamples/package/subpackage/submodule.py b/tests/unit/samples/wiringstringidssamples/package/subpackage/submodule.py index 5723eb4a..6e9fa936 100644 --- a/tests/unit/samples/wiringstringidssamples/package/subpackage/submodule.py +++ b/tests/unit/samples/wiringstringidssamples/package/subpackage/submodule.py @@ -4,5 +4,5 @@ from ...service import Service @inject -def test_function(service: Service = Provide['service']): +def test_function(service: Service = Provide["service"]): return service diff --git a/tests/unit/samples/wiringstringidssamples/resourceclosing.py b/tests/unit/samples/wiringstringidssamples/resourceclosing.py index b8984665..2faf0efd 100644 --- a/tests/unit/samples/wiringstringidssamples/resourceclosing.py +++ b/tests/unit/samples/wiringstringidssamples/resourceclosing.py @@ -33,5 +33,5 @@ class Container(containers.DeclarativeContainer): @inject -def test_function(service: Service = Closing[Provide['service']]): +def test_function(service: Service = Closing[Provide["service"]]): return service diff --git a/tests/unit/schema/test_containers_api_py36.py b/tests/unit/schema/test_containers_api_py36.py index eb44bd4d..1678aabf 100644 --- a/tests/unit/schema/test_containers_api_py36.py +++ b/tests/unit/schema/test_containers_api_py36.py @@ -14,19 +14,19 @@ class FromSchemaTests(unittest.TestCase): container = containers.DynamicContainer() container.from_schema( { - 'version': '1', - 'container': { - 'provider1': { - 'provider': 'Factory', - 'provides': 'list', - 'args': [1, 2, 3], + "version": "1", + "container": { + "provider1": { + "provider": "Factory", + "provides": "list", + "args": [1, 2, 3], }, - 'provider2': { - 'provider': 'Factory', - 'provides': 'dict', - 'kwargs': { - 'one': 'container.provider1', - 'two': 2, + "provider2": { + "provider": "Factory", + "provides": "dict", + "kwargs": { + "one": "container.provider1", + "two": 2, }, }, }, @@ -39,7 +39,7 @@ class FromSchemaTests(unittest.TestCase): self.assertIsInstance(container.provider2, providers.Factory) self.assertIs(container.provider2.provides, dict) - self.assertEqual(container.provider2.kwargs, {'one': container.provider1, 'two': 2}) + self.assertEqual(container.provider2.kwargs, {"one": container.provider1, "two": 2}) class FromYamlSchemaTests(unittest.TestCase): @@ -48,8 +48,8 @@ class FromYamlSchemaTests(unittest.TestCase): container = containers.DynamicContainer() with tempfile.TemporaryDirectory() as tmp_dir: - schema_path = os.path.join(tmp_dir, 'schema.yml') - with open(schema_path, 'w') as file: + schema_path = os.path.join(tmp_dir, "schema.yml") + with open(schema_path, "w") as file: file.write(""" version: "1" container: @@ -76,14 +76,14 @@ class FromYamlSchemaTests(unittest.TestCase): self.assertIsInstance(container.provider2, providers.Factory) self.assertIs(container.provider2.provides, dict) - self.assertEqual(container.provider2.kwargs, {'one': container.provider1, 'two': 2}) + self.assertEqual(container.provider2.kwargs, {"one": container.provider1, "two": 2}) def test_with_loader(self): container = containers.DynamicContainer() with tempfile.TemporaryDirectory() as tmp_dir: - schema_path = os.path.join(tmp_dir, 'schema.yml') - with open(schema_path, 'w') as file: + schema_path = os.path.join(tmp_dir, "schema.yml") + with open(schema_path, "w") as file: file.write(""" version: "1" container: @@ -109,13 +109,13 @@ class FromYamlSchemaTests(unittest.TestCase): container = containers.DynamicContainer() with no_yaml_module(): with self.assertRaises(errors.Error) as error: - container.from_yaml_schema('./no-yaml-installed.yml') + container.from_yaml_schema("./no-yaml-installed.yml") self.assertEqual( error.exception.args[0], - 'Unable to load yaml schema - PyYAML is not installed. ' - 'Install PyYAML or install Dependency Injector with yaml extras: ' - '"pip install dependency-injector[yaml]"', + "Unable to load yaml schema - PyYAML is not installed. " + "Install PyYAML or install Dependency Injector with yaml extras: " + "\"pip install dependency-injector[yaml]\"", ) @@ -125,24 +125,24 @@ class FromJsonSchemaTests(unittest.TestCase): container = containers.DynamicContainer() with tempfile.TemporaryDirectory() as tmp_dir: - schema_path = os.path.join(tmp_dir, 'schema.json') - with open(schema_path, 'w') as file: + schema_path = os.path.join(tmp_dir, "schema.json") + with open(schema_path, "w") as file: file.write( json.dumps( { - 'version': '1', - 'container': { - 'provider1': { - 'provider': 'Factory', - 'provides': 'list', - 'args': [1, 2, 3], + "version": "1", + "container": { + "provider1": { + "provider": "Factory", + "provides": "list", + "args": [1, 2, 3], }, - 'provider2': { - 'provider': 'Factory', - 'provides': 'dict', - 'kwargs': { - 'one': 'container.provider1', - 'two': 2, + "provider2": { + "provider": "Factory", + "provides": "dict", + "kwargs": { + "one": "container.provider1", + "two": 2, }, }, }, @@ -159,4 +159,4 @@ class FromJsonSchemaTests(unittest.TestCase): self.assertIsInstance(container.provider2, providers.Factory) self.assertIs(container.provider2.provides, dict) - self.assertEqual(container.provider2.kwargs, {'one': container.provider1, 'two': 2}) + self.assertEqual(container.provider2.kwargs, {"one": container.provider1, "two": 2}) diff --git a/tests/unit/schema/test_integration_py36.py b/tests/unit/schema/test_integration_py36.py index 813e4a45..f4eb615c 100644 --- a/tests/unit/schema/test_integration_py36.py +++ b/tests/unit/schema/test_integration_py36.py @@ -8,13 +8,13 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) _SAMPLES_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../samples/', + "../samples/", )), ) import sys @@ -27,17 +27,17 @@ class TestSchemaSingleContainer(unittest.TestCase): def test(self): container = containers.DynamicContainer() - container.from_yaml_schema(f'{_SAMPLES_DIR}/schemasample/container-single.yml') + container.from_yaml_schema(f"{_SAMPLES_DIR}/schemasample/container-single.yml") container.config.from_dict({ - 'database': { - 'dsn': ':memory:', + "database": { + "dsn": ":memory:", }, - 'aws': { - 'access_key_id': 'KEY', - 'secret_access_key': 'SECRET', + "aws": { + "access_key_id": "KEY", + "secret_access_key": "SECRET", }, - 'auth': { - 'token_ttl': 3600, + "auth": { + "token_ttl": 3600, }, }) @@ -90,17 +90,17 @@ class TestSchemaMultipleContainers(unittest.TestCase): def test(self): container = containers.DynamicContainer() - container.from_yaml_schema(f'{_SAMPLES_DIR}/schemasample/container-multiple.yml') + container.from_yaml_schema(f"{_SAMPLES_DIR}/schemasample/container-multiple.yml") container.core.config.from_dict({ - 'database': { - 'dsn': ':memory:', + "database": { + "dsn": ":memory:", }, - 'aws': { - 'access_key_id': 'KEY', - 'secret_access_key': 'SECRET', + "aws": { + "access_key_id": "KEY", + "secret_access_key": "SECRET", }, - 'auth': { - 'token_ttl': 3600, + "auth": { + "token_ttl": 3600, }, }) @@ -153,17 +153,17 @@ class TestSchemaMultipleContainersReordered(unittest.TestCase): def test(self): container = containers.DynamicContainer() - container.from_yaml_schema(f'{_SAMPLES_DIR}/schemasample/container-multiple-reordered.yml') + container.from_yaml_schema(f"{_SAMPLES_DIR}/schemasample/container-multiple-reordered.yml") container.core.config.from_dict({ - 'database': { - 'dsn': ':memory:', + "database": { + "dsn": ":memory:", }, - 'aws': { - 'access_key_id': 'KEY', - 'secret_access_key': 'SECRET', + "aws": { + "access_key_id": "KEY", + "secret_access_key": "SECRET", }, - 'auth': { - 'token_ttl': 3600, + "auth": { + "token_ttl": 3600, }, }) @@ -216,17 +216,17 @@ class TestSchemaMultipleContainersWithInlineProviders(unittest.TestCase): def test(self): container = containers.DynamicContainer() - container.from_yaml_schema(f'{_SAMPLES_DIR}/schemasample/container-multiple-inline.yml') + container.from_yaml_schema(f"{_SAMPLES_DIR}/schemasample/container-multiple-inline.yml") container.core.config.from_dict({ - 'database': { - 'dsn': ':memory:', + "database": { + "dsn": ":memory:", }, - 'aws': { - 'access_key_id': 'KEY', - 'secret_access_key': 'SECRET', + "aws": { + "access_key_id": "KEY", + "secret_access_key": "SECRET", }, - 'auth': { - 'token_ttl': 3600, + "auth": { + "token_ttl": 3600, }, }) @@ -277,18 +277,18 @@ class TestSchemaMultipleContainersWithInlineProviders(unittest.TestCase): class TestSchemaBoto3Session(unittest.TestCase): - @unittest.skip('Boto3 tries to connect to the internet') + @unittest.skip("Boto3 tries to connect to the internet") def test(self): container = containers.DynamicContainer() - container.from_yaml_schema(f'{_SAMPLES_DIR}/schemasample/container-boto3-session.yml') + container.from_yaml_schema(f"{_SAMPLES_DIR}/schemasample/container-boto3-session.yml") container.config.from_dict( { - 'aws_access_key_id': 'key', - 'aws_secret_access_key': 'secret', - 'aws_session_token': 'token', - 'aws_region_name': 'us-east-1', + "aws_access_key_id": "key", + "aws_secret_access_key": "secret", + "aws_session_token": "token", + "aws_region_name": "us-east-1", }, ) - self.assertEqual(container.s3_client().__class__.__name__, 'S3') - self.assertEqual(container.sqs_client().__class__.__name__, 'SQS') + self.assertEqual(container.s3_client().__class__.__name__, "S3") + self.assertEqual(container.sqs_client().__class__.__name__, "SQS") diff --git a/tests/unit/test_common_py2_py3.py b/tests/unit/test_common_py2_py3.py index 5eb70038..7315dfbe 100644 --- a/tests/unit/test_common_py2_py3.py +++ b/tests/unit/test_common_py2_py3.py @@ -8,4 +8,4 @@ from dependency_injector import __version__ class VersionTest(unittest.TestCase): def test_version_follows_semantic_versioning(self): - self.assertEqual(len(__version__.split('.')), 3) + self.assertEqual(len(__version__.split(".")), 3) diff --git a/tests/unit/wiring/test_wiring_py36.py b/tests/unit/wiring/test_wiring_py36.py index f91205b0..61a25042 100644 --- a/tests/unit/wiring/test_wiring_py36.py +++ b/tests/unit/wiring/test_wiring_py36.py @@ -18,13 +18,13 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) _SAMPLES_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../samples/', + "../samples/", )), ) import sys @@ -44,7 +44,7 @@ class WiringTest(unittest.TestCase): container: Container def setUp(self) -> None: - self.container = Container(config={'a': {'b': {'c': 10}}}) + self.container = Container(config={"a": {"b": {"c": 10}}}) self.container.wire( modules=[module], packages=[package], @@ -77,7 +77,7 @@ class WiringTest(unittest.TestCase): self.container.wire(modules=[module_invalid_attr_injection]) self.assertEqual( str(context.exception), - 'Unknown type of marker {0}'.format(module_invalid_attr_injection.service), + "Unknown type of marker {0}".format(module_invalid_attr_injection.service), ) def test_class_wiring(self): @@ -153,17 +153,17 @@ class WiringTest(unittest.TestCase): self.assertEqual(value_int, 10) self.assertEqual(value_float, 10.0) - self.assertEqual(value_str, '10') + self.assertEqual(value_str, "10") self.assertEqual(value_decimal, Decimal(10)) self.assertEqual(value_required, 10) self.assertEqual(value_required_int, 10) self.assertEqual(value_required_float, 10.0) - self.assertEqual(value_required_str, '10') + self.assertEqual(value_required_str, "10") self.assertEqual(value_required_decimal, Decimal(10)) def test_configuration_option_required_undefined(self): self.container.config.reset_override() - with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a.b.c"'): + with self.assertRaisesRegex(errors.Error, "Undefined configuration option \"config.a.b.c\""): module.test_config_value_required_undefined() def test_provide_provider(self): @@ -177,7 +177,7 @@ class WiringTest(unittest.TestCase): def test_provided_instance(self): class TestService: foo = { - 'bar': lambda: 10, + "bar": lambda: 10, } with self.container.service.override(TestService()): @@ -190,22 +190,22 @@ class WiringTest(unittest.TestCase): def test_config_invariant(self): config = { - 'option': { - 'a': 1, - 'b': 2, + "option": { + "a": 1, + "b": 2, }, - 'switch': 'a', + "switch": "a", } self.container.config.from_dict(config) value_default = module.test_config_invariant() self.assertEqual(value_default, 1) - with self.container.config.switch.override('a'): + with self.container.config.switch.override("a"): value_a = module.test_config_invariant() self.assertEqual(value_a, 1) - with self.container.config.switch.override('b'): + with self.container.config.switch.override("b"): value_b = module.test_config_invariant() self.assertEqual(value_b, 2) @@ -364,7 +364,7 @@ class WiringWithStringModuleAndPackageNamesTest(unittest.TestCase): class ModuleAsPackageTest(unittest.TestCase): def setUp(self): - self.container = Container(config={'a': {'b': {'c': 10}}}) + self.container = Container(config={"a": {"b": {"c": 10}}}) self.addCleanup(self.container.unwire) def test_module_as_package_wiring(self): @@ -484,7 +484,7 @@ class AutoLoaderTest(unittest.TestCase): container: Container def setUp(self) -> None: - self.container = Container(config={'a': {'b': {'c': 10}}}) + self.container = Container(config={"a": {"b": {"c": 10}}}) importlib.reload(module) def tearDown(self) -> None: @@ -500,7 +500,7 @@ class AutoLoaderTest(unittest.TestCase): def test_register_container(self): register_loader_containers(self.container) importlib.reload(module) - importlib.import_module('wiringsamples.imports') + importlib.import_module("wiringsamples.imports") service = module.test_function() self.assertIsInstance(service, Service) diff --git a/tests/unit/wiring/test_wiring_string_ids_py36.py b/tests/unit/wiring/test_wiring_string_ids_py36.py index be546db8..01a5df4d 100644 --- a/tests/unit/wiring/test_wiring_string_ids_py36.py +++ b/tests/unit/wiring/test_wiring_string_ids_py36.py @@ -18,13 +18,13 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) _SAMPLES_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../samples/', + "../samples/", )), ) import sys @@ -43,7 +43,7 @@ class WiringTest(unittest.TestCase): container: Container def setUp(self) -> None: - self.container = Container(config={'a': {'b': {'c': 10}}}) + self.container = Container(config={"a": {"b": {"c": 10}}}) self.container.wire( modules=[module], packages=[package], @@ -143,17 +143,17 @@ class WiringTest(unittest.TestCase): self.assertEqual(value_int, 10) self.assertEqual(value_float, 10.0) - self.assertEqual(value_str, '10') + self.assertEqual(value_str, "10") self.assertEqual(value_decimal, Decimal(10)) self.assertEqual(value_required, 10) self.assertEqual(value_required_int, 10) self.assertEqual(value_required_float, 10.0) - self.assertEqual(value_required_str, '10') + self.assertEqual(value_required_str, "10") self.assertEqual(value_required_decimal, Decimal(10)) def test_configuration_option_required_undefined(self): self.container.config.reset_override() - with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a.b.c"'): + with self.assertRaisesRegex(errors.Error, "Undefined configuration option \"config.a.b.c\""): module.test_config_value_required_undefined() def test_provide_provider(self): @@ -163,7 +163,7 @@ class WiringTest(unittest.TestCase): def test_provided_instance(self): class TestService: foo = { - 'bar': lambda: 10, + "bar": lambda: 10, } with self.container.service.override(TestService()): @@ -176,22 +176,22 @@ class WiringTest(unittest.TestCase): def test_config_invariant(self): config = { - 'option': { - 'a': 1, - 'b': 2, + "option": { + "a": 1, + "b": 2, }, - 'switch': 'a', + "switch": "a", } self.container.config.from_dict(config) value_default = module.test_config_invariant() self.assertEqual(value_default, 1) - with self.container.config.switch.override('a'): + with self.container.config.switch.override("a"): value_a = module.test_config_invariant() self.assertEqual(value_a, 1) - with self.container.config.switch.override('b'): + with self.container.config.switch.override("b"): value_b = module.test_config_invariant() self.assertEqual(value_b, 2) @@ -418,7 +418,7 @@ class AutoLoaderTest(unittest.TestCase): container: Container def setUp(self) -> None: - self.container = Container(config={'a': {'b': {'c': 10}}}) + self.container = Container(config={"a": {"b": {"c": 10}}}) importlib.reload(module) def tearDown(self) -> None: diff --git a/tests/unit/wiring/test_wiringfastapi_py36.py b/tests/unit/wiring/test_wiringfastapi_py36.py index 68b2ae0b..baf93e3f 100644 --- a/tests/unit/wiring/test_wiringfastapi_py36.py +++ b/tests/unit/wiring/test_wiringfastapi_py36.py @@ -5,13 +5,13 @@ import os _TOP_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../', + "../", )), ) _SAMPLES_DIR = os.path.abspath( os.path.sep.join(( os.path.dirname(__file__), - '../samples/', + "../samples/", )), ) import sys @@ -29,7 +29,7 @@ class WiringFastAPITest(AsyncTestCase): def setUp(self) -> None: super().setUp() - self.client = AsyncClient(app=web.app, base_url='http://test') + self.client = AsyncClient(app=web.app, base_url="http://test") def tearDown(self) -> None: self._run(self.client.aclose()) @@ -38,15 +38,15 @@ class WiringFastAPITest(AsyncTestCase): def test_depends_marker_injection(self): class ServiceMock: async def process(self): - return 'Foo' + return "Foo" with web.container.service.override(ServiceMock()): - response = self._run(self.client.get('/')) + response = self._run(self.client.get("/")) self.assertEqual(response.status_code, 200) - self.assertEqual(response.json(), {'result': 'Foo'}) + self.assertEqual(response.json(), {"result": "Foo"}) def test_depends_injection(self): - response = self._run(self.client.get('/auth', auth=('john_smith', 'secret'))) + response = self._run(self.client.get("/auth", auth=("john_smith", "secret"))) self.assertEqual(response.status_code, 200) - self.assertEqual(response.json(), {'username': 'john_smith', 'password': 'secret'}) + self.assertEqual(response.json(), {"username": "john_smith", "password": "secret"})