From 2ed460f054aa8d191c095aa871965ab0120c9e7e Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 14 Oct 2015 17:51:05 +0300 Subject: [PATCH 01/14] Refactor catalog subsets --- dependency_injector/__init__.py | 4 +- dependency_injector/catalog.py | 76 ++++++++++++++++++++++---------- dependency_injector/providers.py | 3 +- examples/catalogs/subsets.py | 7 ++- tests/test_utils.py | 10 +++-- 5 files changed, 68 insertions(+), 32 deletions(-) diff --git a/dependency_injector/__init__.py b/dependency_injector/__init__.py index d0cd6304..8b7bb3a0 100644 --- a/dependency_injector/__init__.py +++ b/dependency_injector/__init__.py @@ -1,7 +1,7 @@ """Dependency injector.""" from .catalog import AbstractCatalog -from .catalog import CatalogSubset +from .catalog import Subset from .catalog import override from .providers import Provider @@ -39,7 +39,7 @@ from .errors import Error __all__ = ( # Catalogs 'AbstractCatalog', - 'CatalogSubset', + 'Subset', 'override', # Providers diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index 544cb8c2..badf6d6e 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -29,7 +29,13 @@ class CatalogMetaClass(type): attributes['cls_providers'] = cls_providers attributes['inherited_providers'] = inherited_providers attributes['providers'] = providers - return type.__new__(mcs, class_name, bases, attributes) + + cls = type.__new__(mcs, class_name, bases, attributes) + + for name, provider in six.iteritems(cls_providers): + provider.bind = ProviderBinding(cls, name) + + return cls def __repr__(cls): """Return string representation of the catalog class.""" @@ -58,14 +64,15 @@ class AbstractCatalog(object): __IS_CATALOG__ = True - def __new__(cls, *providers): - """Catalog constructor. + @classmethod + def subset(cls, *provider_names): + """Catalog subset factory. - Catalogs are declaratives entities that could not be instantiated. - Catalog constructor is designed to produce subsets of catalog - providers. + Create subset of catalog providers using provider names. """ - return CatalogSubset(catalog=cls, providers=providers) + return Subset(*(provider + for name, provider in six.iteritems(cls.providers) + if name in provider_names)) @classmethod def is_subset_owner(cls, subset): @@ -103,28 +110,42 @@ class AbstractCatalog(object): return name in cls.providers -class CatalogSubset(object): +class ProviderBinding(object): + """Catalog provider binding.""" + + __slots__ = ('catalog', 'name') + + def __init__(self, catalog, name): + """Initializer.""" + self.catalog = catalog + self.name = name + + +class Subset(object): """Subset of catalog providers.""" __IS_SUBSET__ = True - __slots__ = ('catalog', 'available_providers', 'providers', '__dict__') + __slots__ = ('catalog', 'providers', '__dict__') - def __init__(self, catalog, providers): + def __init__(self, *providers): """Initializer.""" - self.catalog = catalog - self.available_providers = set(providers) + if not providers: + raise Error('Subset could not be initialized without providers') + + first_provider = providers[0] + self.catalog = self._get_provider_binding(first_provider).catalog + self.providers = dict() - for provider_name in self.available_providers: - try: - provider = self.catalog.providers[provider_name] - except KeyError: - raise Error('Subset could not add "{0}" provider in scope, ' - 'because {1} has no provider with ' - 'such name'.format(provider_name, self.catalog)) - else: - self.providers[provider_name] = provider - self.__dict__.update(self.providers) - super(CatalogSubset, self).__init__() + for provider in providers: + provider_bind = self._get_provider_binding(provider) + if not self.catalog.get(provider_bind.name) is provider: + raise Error('Subset can contain providers from ' + 'one catalog {0}, ' + 'unknown provider - {1}'.format(self.catalog, + provider)) + self.providers[provider_bind.name] = provider + self.__dict__[provider_bind.name] = provider + super(Subset, self).__init__() def get(self, name): """Return provider with specified name or raises error.""" @@ -144,7 +165,14 @@ class CatalogSubset(object): def __repr__(self): """Return string representation of subset.""" return ''.format( - ', '.join(self.available_providers), self.catalog) + ', '.join(six.iterkeys(self.providers)), self.catalog) + + def _get_provider_binding(self, provider): + """Return provider binding or raise error if provider is not boud.""" + if not provider.bind: + raise Error('Provider {0} is not bound to ' + 'any catalog'.format(provider)) + return provider.bind def _raise_undefined_provider_error(self, name): """Raise error for cases when there is no such provider in subset.""" diff --git a/dependency_injector/providers.py b/dependency_injector/providers.py index 69351cbb..501b90d8 100644 --- a/dependency_injector/providers.py +++ b/dependency_injector/providers.py @@ -18,11 +18,12 @@ class Provider(object): """Base provider class.""" __IS_PROVIDER__ = True - __slots__ = ('overridden_by',) + __slots__ = ('overridden_by', 'bind') def __init__(self): """Initializer.""" self.overridden_by = None + self.bind = None def __call__(self, *args, **kwargs): """Return provided instance.""" diff --git a/examples/catalogs/subsets.py b/examples/catalogs/subsets.py index 814af380..84206699 100644 --- a/examples/catalogs/subsets.py +++ b/examples/catalogs/subsets.py @@ -36,8 +36,11 @@ class PhotosView(BaseWebView): """Example photo processing web view.""" # Creating example views with appropriate service provider subsets: -auth_view = AuthView(Services('users', 'auth')) -photos_view = PhotosView(Services('users', 'photos')) +auth_view = AuthView(di.Subset(Services.users, + Services.auth)) +photos_view = PhotosView(di.Subset(Services.users, + Services.photos)) + # Making some asserts: assert auth_view.services.users is Services.users diff --git a/tests/test_utils.py b/tests/test_utils.py index 3d86b04d..3835a76b 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -215,12 +215,16 @@ class IsCatalogSubsetTests(unittest.TestCase): def test_with_cls(self): """Test with class.""" - self.assertFalse(di.is_catalog_subset(di.CatalogSubset)) + self.assertFalse(di.is_catalog_subset(di.Subset)) def test_with_instance(self): """Test with class.""" - self.assertTrue(di.is_catalog_subset( - di.CatalogSubset(catalog=di.AbstractCatalog, providers=tuple()))) + class Catalog(di.AbstractCatalog): + """Example catalog child class.""" + + p1 = di.Provider() + + self.assertTrue(di.is_catalog_subset(di.Subset(Catalog.p1))) def test_with_string(self): """Test with string.""" From 4b2268040686acb2ef5cc138247ad58c2f3b7917 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 14 Oct 2015 18:07:28 +0300 Subject: [PATCH 02/14] Update subset unit tests --- tests/test_catalog.py | 39 +++++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/tests/test_catalog.py b/tests/test_catalog.py index 26f1ec9b..a1da8f21 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -71,15 +71,9 @@ class CatalogsInheritanceTests(unittest.TestCase): p32=CatalogC.p32)) -class CatalogSubsetTests(unittest.TestCase): +class _BasicSubsetTests(object): """Catalog subset test cases.""" - catalog = None - - def setUp(self): - """Set test environment up.""" - self.subset = CatalogC('p11', 'p12') - def test_get_attr_from_subset(self): """Test get providers (attribute) from subset.""" self.assertIs(self.subset.p11, CatalogC.p11) @@ -114,9 +108,22 @@ class CatalogSubsetTests(unittest.TestCase): self.assertFalse(self.subset.has('p31')) self.assertFalse(self.subset.has('p32')) - def test_creating_with_undefined_provider(self): - """Test subset creation with provider that is not in catalog.""" - self.assertRaises(di.Error, CatalogC, 'undefined_provider') + +class SubsetCatalogFactoryTests(_BasicSubsetTests, unittest.TestCase): + """Subset, that is created by catalog factory method, tests.""" + + def setUp(self): + """Set test environment up.""" + self.subset = CatalogC.subset('p11', 'p12') + + +class SubsetProvidersAggregationTests(_BasicSubsetTests, unittest.TestCase): + """Subset, that is created catalog providers aggregation method, tests.""" + + def setUp(self): + """Set test environment up.""" + self.subset = di.Subset(CatalogC.p11, + CatalogC.p12) class CatalogTests(unittest.TestCase): @@ -147,11 +154,15 @@ class CatalogTests(unittest.TestCase): def test_is_subset_owner(self): """Test that catalog is subset owner.""" - subset = CatalogA() + subset1 = CatalogA.subset('p11') + self.assertTrue(CatalogA.is_subset_owner(subset1)) + self.assertFalse(CatalogB.is_subset_owner(subset1)) + self.assertFalse(CatalogC.is_subset_owner(subset1)) - self.assertTrue(CatalogA.is_subset_owner(subset)) - self.assertFalse(CatalogB.is_subset_owner(subset)) - self.assertFalse(CatalogC.is_subset_owner(subset)) + subset2 = di.Subset(CatalogA.p11) + self.assertTrue(CatalogA.is_subset_owner(subset2)) + self.assertFalse(CatalogB.is_subset_owner(subset2)) + self.assertFalse(CatalogC.is_subset_owner(subset2)) def test_filter_all_providers_by_type(self): """Test getting of all catalog providers of specific type.""" From 3b5476356331938cf7194c471256a8e2d4d1be61 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 14 Oct 2015 18:34:50 +0300 Subject: [PATCH 03/14] Change catalog subsets factory implementation --- dependency_injector/catalog.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index badf6d6e..f7f543ea 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -70,9 +70,8 @@ class AbstractCatalog(object): Create subset of catalog providers using provider names. """ - return Subset(*(provider - for name, provider in six.iteritems(cls.providers) - if name in provider_names)) + return Subset(*(cls.get(provider_name) + for provider_name in provider_names)) @classmethod def is_subset_owner(cls, subset): From 730d46f9a0f5dd7d59d42fb10e3a186c1985f7f4 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Thu, 15 Oct 2015 20:15:38 +0300 Subject: [PATCH 04/14] Add catalog packs --- dependency_injector/__init__.py | 4 - dependency_injector/catalog.py | 150 ++++++++++----------- dependency_injector/utils.py | 6 - examples/catalogs/{subsets.py => packs.py} | 11 +- tests/test_catalog.py | 105 +++++++-------- tests/test_utils.py | 25 ---- 6 files changed, 126 insertions(+), 175 deletions(-) rename examples/catalogs/{subsets.py => packs.py} (83%) diff --git a/dependency_injector/__init__.py b/dependency_injector/__init__.py index 8b7bb3a0..8420bd47 100644 --- a/dependency_injector/__init__.py +++ b/dependency_injector/__init__.py @@ -1,7 +1,6 @@ """Dependency injector.""" from .catalog import AbstractCatalog -from .catalog import Subset from .catalog import override from .providers import Provider @@ -31,7 +30,6 @@ from .utils import is_kwarg_injection from .utils import is_attribute_injection from .utils import is_method_injection from .utils import is_catalog -from .utils import is_catalog_subset from .errors import Error @@ -39,7 +37,6 @@ from .errors import Error __all__ = ( # Catalogs 'AbstractCatalog', - 'Subset', 'override', # Providers @@ -72,7 +69,6 @@ __all__ = ( 'is_attribute_injection', 'is_method_injection', 'is_catalog', - 'is_catalog_subset', # Errors 'Error', diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index f7f543ea..f2ca1136 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -8,6 +8,67 @@ from .utils import is_provider from .utils import is_catalog +class CatalogPackFactory(object): + """Factory of catalog packs.""" + + def __init__(self, catalog): + """Initializer.""" + self.catalog = catalog + + def __call__(self, *providers): + """Create catalog pack with specified providers.""" + return CatalogPack(self.catalog, *providers) + + +class CatalogPack(object): + """Pack of catalog providers.""" + + __slots__ = ('catalog', 'providers', '__dict__') + + def __init__(self, catalog, *providers): + """Initializer.""" + self.catalog = catalog + self.providers = dict() + for provider in providers: + self._ensure_provider_is_bound(provider) + self.__dict__[provider.bind.name] = provider + self.providers[provider.bind.name] = provider + super(CatalogPack, self).__init__() + + def get(self, name): + """Return provider with specified name or raises error.""" + try: + return self.providers[name] + except KeyError: + self._raise_undefined_provider_error(name) + + def has(self, name): + """Check if there is provider with certain name.""" + return name in self.providers + + def _ensure_provider_is_bound(self, provider): + """Check that provider is bound.""" + if not provider.bind: + raise Error('Provider {0} is not bound to ' + 'any catalog'.format(provider)) + if provider is not self.catalog.get(provider.bind.name): + raise Error('{0} can contain providers from ' + 'catalog {0}' .format(self, self.catalog)) + + def _raise_undefined_provider_error(self, name): + """Raise error for cases when there is no such provider in pack.""" + raise Error('Provider "{0}" is not a part of {1}'.format(name, self)) + + def __getattr__(self, item): + """Raise an error on every attempt to get undefined provider.""" + self._raise_undefined_provider_error(item) + + def __repr__(self): + """Return string representation of pack.""" + return ''.format( + ', '.join(six.iterkeys(self.providers)), self.catalog) + + class CatalogMetaClass(type): """Providers catalog meta class.""" @@ -26,12 +87,14 @@ class CatalogMetaClass(type): providers.update(cls_providers) providers.update(inherited_providers) - attributes['cls_providers'] = cls_providers - attributes['inherited_providers'] = inherited_providers - attributes['providers'] = providers - cls = type.__new__(mcs, class_name, bases, attributes) + cls.cls_providers = cls_providers + cls.inherited_providers = inherited_providers + cls.providers = providers + + cls.Pack = CatalogPackFactory(cls) + for name, provider in six.iteritems(cls_providers): provider.bind = ProviderBinding(cls, name) @@ -56,28 +119,19 @@ class AbstractCatalog(object): :type inherited_providers: dict[str, dependency_injector.Provider] :param inherited_providers: Dict of providers, that are inherited from parent catalogs + + :type Pack: CatalogPack + :param Pack: Catalog's pack class """ - providers = dict() + Pack = CatalogPackFactory + cls_providers = dict() inherited_providers = dict() + providers = dict() __IS_CATALOG__ = True - @classmethod - def subset(cls, *provider_names): - """Catalog subset factory. - - Create subset of catalog providers using provider names. - """ - return Subset(*(cls.get(provider_name) - for provider_name in provider_names)) - - @classmethod - def is_subset_owner(cls, subset): - """Check if catalog is subset owner.""" - return subset.catalog is cls - @classmethod def filter(cls, provider_type): """Return dict of providers, that are instance of provided type.""" @@ -120,64 +174,6 @@ class ProviderBinding(object): self.name = name -class Subset(object): - """Subset of catalog providers.""" - - __IS_SUBSET__ = True - __slots__ = ('catalog', 'providers', '__dict__') - - def __init__(self, *providers): - """Initializer.""" - if not providers: - raise Error('Subset could not be initialized without providers') - - first_provider = providers[0] - self.catalog = self._get_provider_binding(first_provider).catalog - - self.providers = dict() - for provider in providers: - provider_bind = self._get_provider_binding(provider) - if not self.catalog.get(provider_bind.name) is provider: - raise Error('Subset can contain providers from ' - 'one catalog {0}, ' - 'unknown provider - {1}'.format(self.catalog, - provider)) - self.providers[provider_bind.name] = provider - self.__dict__[provider_bind.name] = provider - super(Subset, self).__init__() - - def get(self, name): - """Return provider with specified name or raises error.""" - try: - return self.providers[name] - except KeyError: - self._raise_undefined_provider_error(name) - - def has(self, name): - """Check if there is provider with certain name.""" - return name in self.providers - - def __getattr__(self, item): - """Raise an error on every attempt to get undefined provider.""" - self._raise_undefined_provider_error(item) - - def __repr__(self): - """Return string representation of subset.""" - return ''.format( - ', '.join(six.iterkeys(self.providers)), self.catalog) - - def _get_provider_binding(self, provider): - """Return provider binding or raise error if provider is not boud.""" - if not provider.bind: - raise Error('Provider {0} is not bound to ' - 'any catalog'.format(provider)) - return provider.bind - - def _raise_undefined_provider_error(self, name): - """Raise error for cases when there is no such provider in subset.""" - raise Error('Provider "{0}" is not a part of {1}'.format(name, self)) - - def override(catalog): """Catalog overriding decorator.""" def decorator(overriding_catalog): diff --git a/dependency_injector/utils.py b/dependency_injector/utils.py index 426584cd..42a18202 100644 --- a/dependency_injector/utils.py +++ b/dependency_injector/utils.py @@ -62,12 +62,6 @@ def is_catalog(instance): getattr(instance, '__IS_CATALOG__', False) is True) -def is_catalog_subset(instance): - """Check if instance is catalog subset instance.""" - return (not isinstance(instance, six.class_types) and - getattr(instance, '__IS_SUBSET__', False) is True) - - def get_injectable_kwargs(kwargs, injections): """Return dictionary of kwargs, patched with injections.""" init_kwargs = dict(((injection.name, injection.value) diff --git a/examples/catalogs/subsets.py b/examples/catalogs/packs.py similarity index 83% rename from examples/catalogs/subsets.py rename to examples/catalogs/packs.py index 84206699..88720ee9 100644 --- a/examples/catalogs/subsets.py +++ b/examples/catalogs/packs.py @@ -35,12 +35,11 @@ class AuthView(BaseWebView): class PhotosView(BaseWebView): """Example photo processing web view.""" -# Creating example views with appropriate service provider subsets: -auth_view = AuthView(di.Subset(Services.users, - Services.auth)) -photos_view = PhotosView(di.Subset(Services.users, - Services.photos)) - +# Creating example views with appropriate service provider packs: +auth_view = AuthView(Services.Pack(Services.users, + Services.auth)) +photos_view = PhotosView(Services.Pack(Services.users, + Services.photos)) # Making some asserts: assert auth_view.services.users is Services.users diff --git a/tests/test_catalog.py b/tests/test_catalog.py index a1da8f21..8572f367 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -25,6 +25,13 @@ class CatalogC(CatalogB): p32 = di.Provider() +class CatalogD(di.AbstractCatalog): + """Test catalog D.""" + + p11 = di.Provider() + p12 = di.Provider() + + class CatalogsInheritanceTests(unittest.TestCase): """Catalogs inheritance tests.""" @@ -71,59 +78,55 @@ class CatalogsInheritanceTests(unittest.TestCase): p32=CatalogC.p32)) -class _BasicSubsetTests(object): - """Catalog subset test cases.""" +class CatalogPackTests(unittest.TestCase): + """Catalog pack test cases.""" - def test_get_attr_from_subset(self): - """Test get providers (attribute) from subset.""" - self.assertIs(self.subset.p11, CatalogC.p11) - self.assertIs(self.subset.p12, CatalogC.p12) + def setUp(self): + """Set test environment up.""" + self.pack = CatalogC.Pack(CatalogC.p11, + CatalogC.p12) - def test_get_attr_not_from_subset(self): - """Test get providers (attribute) that are not in subset.""" - self.assertRaises(di.Error, getattr, self.subset, 'p21') - self.assertRaises(di.Error, getattr, self.subset, 'p22') - self.assertRaises(di.Error, getattr, self.subset, 'p31') - self.assertRaises(di.Error, getattr, self.subset, 'p32') + def test_get_attr_from_pack(self): + """Test get providers (attribute) from pack.""" + self.assertIs(self.pack.p11, CatalogC.p11) + self.assertIs(self.pack.p12, CatalogC.p12) - def test_get_method_from_subset(self): - """Test get providers (get() method) from subset.""" - self.assertIs(self.subset.get('p11'), CatalogC.p11) - self.assertIs(self.subset.get('p12'), CatalogC.p12) + def test_get_attr_not_from_pack(self): + """Test get providers (attribute) that are not in pack.""" + self.assertRaises(di.Error, getattr, self.pack, 'p21') + self.assertRaises(di.Error, getattr, self.pack, 'p22') + self.assertRaises(di.Error, getattr, self.pack, 'p31') + self.assertRaises(di.Error, getattr, self.pack, 'p32') - def test_get_method_not_from_subset(self): - """Test get providers (get() method) that are not in subset.""" - self.assertRaises(di.Error, self.subset.get, 'p21') - self.assertRaises(di.Error, self.subset.get, 'p22') - self.assertRaises(di.Error, self.subset.get, 'p31') - self.assertRaises(di.Error, self.subset.get, 'p32') + def test_get_method_from_pack(self): + """Test get providers (get() method) from pack.""" + self.assertIs(self.pack.get('p11'), CatalogC.p11) + self.assertIs(self.pack.get('p12'), CatalogC.p12) + + def test_get_method_not_from_pack(self): + """Test get providers (get() method) that are not in pack.""" + self.assertRaises(di.Error, self.pack.get, 'p21') + self.assertRaises(di.Error, self.pack.get, 'p22') + self.assertRaises(di.Error, self.pack.get, 'p31') + self.assertRaises(di.Error, self.pack.get, 'p32') def test_has(self): - """Test checks of providers availability in subsets.""" - self.assertTrue(self.subset.has('p11')) - self.assertTrue(self.subset.has('p12')) + """Test checks of providers availability in pack.""" + self.assertTrue(self.pack.has('p11')) + self.assertTrue(self.pack.has('p12')) - self.assertFalse(self.subset.has('p21')) - self.assertFalse(self.subset.has('p22')) - self.assertFalse(self.subset.has('p31')) - self.assertFalse(self.subset.has('p32')) + self.assertFalse(self.pack.has('p21')) + self.assertFalse(self.pack.has('p22')) + self.assertFalse(self.pack.has('p31')) + self.assertFalse(self.pack.has('p32')) + def test_create_pack_with_another_catalog_provider(self): + """Test that pack is not created with provider from another catalog.""" + self.assertRaises(di.Error, CatalogC.Pack, CatalogC.p31, CatalogD.p11) -class SubsetCatalogFactoryTests(_BasicSubsetTests, unittest.TestCase): - """Subset, that is created by catalog factory method, tests.""" - - def setUp(self): - """Set test environment up.""" - self.subset = CatalogC.subset('p11', 'p12') - - -class SubsetProvidersAggregationTests(_BasicSubsetTests, unittest.TestCase): - """Subset, that is created catalog providers aggregation method, tests.""" - - def setUp(self): - """Set test environment up.""" - self.subset = di.Subset(CatalogC.p11, - CatalogC.p12) + def test_create_pack_with_unbound_provider(self): + """Test that pack is not created with unbound provider.""" + self.assertRaises(di.Error, CatalogC.Pack, di.Provider()) class CatalogTests(unittest.TestCase): @@ -143,7 +146,7 @@ class CatalogTests(unittest.TestCase): self.assertRaises(di.Error, CatalogC.get, 'undefined') def test_has(self): - """Test checks of providers availability in subsets.""" + """Test checks of providers availability in catalog.""" self.assertTrue(CatalogC.has('p11')) self.assertTrue(CatalogC.has('p12')) self.assertTrue(CatalogC.has('p21')) @@ -152,18 +155,6 @@ class CatalogTests(unittest.TestCase): self.assertTrue(CatalogC.has('p32')) self.assertFalse(CatalogC.has('undefined')) - def test_is_subset_owner(self): - """Test that catalog is subset owner.""" - subset1 = CatalogA.subset('p11') - self.assertTrue(CatalogA.is_subset_owner(subset1)) - self.assertFalse(CatalogB.is_subset_owner(subset1)) - self.assertFalse(CatalogC.is_subset_owner(subset1)) - - subset2 = di.Subset(CatalogA.p11) - self.assertTrue(CatalogA.is_subset_owner(subset2)) - self.assertFalse(CatalogB.is_subset_owner(subset2)) - self.assertFalse(CatalogC.is_subset_owner(subset2)) - def test_filter_all_providers_by_type(self): """Test getting of all catalog providers of specific type.""" self.assertTrue(len(CatalogC.filter(di.Provider)) == 6) diff --git a/tests/test_utils.py b/tests/test_utils.py index 3835a76b..de27bab1 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -208,28 +208,3 @@ class IsCatalogTests(unittest.TestCase): def test_with_object(self): """Test with object.""" self.assertFalse(di.is_catalog(object())) - - -class IsCatalogSubsetTests(unittest.TestCase): - """`is_catalog_subset()` test cases.""" - - def test_with_cls(self): - """Test with class.""" - self.assertFalse(di.is_catalog_subset(di.Subset)) - - def test_with_instance(self): - """Test with class.""" - class Catalog(di.AbstractCatalog): - """Example catalog child class.""" - - p1 = di.Provider() - - self.assertTrue(di.is_catalog_subset(di.Subset(Catalog.p1))) - - def test_with_string(self): - """Test with string.""" - self.assertFalse(di.is_catalog_subset('some_string')) - - def test_with_object(self): - """Test with object.""" - self.assertFalse(di.is_catalog_subset(object())) From 40dc54b64bb080e997a56850982ee0e8dd5d4b02 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Fri, 16 Oct 2015 23:54:51 +0300 Subject: [PATCH 05/14] Refactor catalog bundle --- dependency_injector/catalog.py | 69 +++++++++++------------ dependency_injector/providers.py | 5 ++ tests/test_catalog.py | 97 +++++++++++++++++--------------- 3 files changed, 90 insertions(+), 81 deletions(-) diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index f2ca1136..2725f7c3 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -8,32 +8,21 @@ from .utils import is_provider from .utils import is_catalog -class CatalogPackFactory(object): - """Factory of catalog packs.""" +class CatalogBundle(object): + """Bundle of catalog providers.""" - def __init__(self, catalog): + catalog = None + """:type: AbstractCatalog""" + + __slots__ = ('providers', '__dict__') + + def __init__(self, *providers): """Initializer.""" - self.catalog = catalog - - def __call__(self, *providers): - """Create catalog pack with specified providers.""" - return CatalogPack(self.catalog, *providers) - - -class CatalogPack(object): - """Pack of catalog providers.""" - - __slots__ = ('catalog', 'providers', '__dict__') - - def __init__(self, catalog, *providers): - """Initializer.""" - self.catalog = catalog - self.providers = dict() - for provider in providers: - self._ensure_provider_is_bound(provider) - self.__dict__[provider.bind.name] = provider - self.providers[provider.bind.name] = provider - super(CatalogPack, self).__init__() + self.providers = dict((provider.bind.name, provider) + for provider in providers + if self._ensure_provider_is_bound(provider)) + self.__dict__.update(self.providers) + super(CatalogBundle, self).__init__() def get(self, name): """Return provider with specified name or raises error.""" @@ -47,16 +36,17 @@ class CatalogPack(object): return name in self.providers def _ensure_provider_is_bound(self, provider): - """Check that provider is bound.""" - if not provider.bind: + """Check that provider is bound to the bundle's catalog.""" + if not provider.is_bound: raise Error('Provider {0} is not bound to ' 'any catalog'.format(provider)) if provider is not self.catalog.get(provider.bind.name): raise Error('{0} can contain providers from ' - 'catalog {0}' .format(self, self.catalog)) + 'catalog {0}'.format(self.__class__, self.catalog)) + return True def _raise_undefined_provider_error(self, name): - """Raise error for cases when there is no such provider in pack.""" + """Raise error for cases when there is no such provider in bundle.""" raise Error('Provider "{0}" is not a part of {1}'.format(name, self)) def __getattr__(self, item): @@ -64,16 +54,16 @@ class CatalogPack(object): self._raise_undefined_provider_error(item) def __repr__(self): - """Return string representation of pack.""" - return ''.format( - ', '.join(six.iterkeys(self.providers)), self.catalog) + """Return string representation of bundle.""" + return ''.format( + self.catalog, ', '.join(six.iterkeys(self.providers))) class CatalogMetaClass(type): - """Providers catalog meta class.""" + """Catalog meta class.""" def __new__(mcs, class_name, bases, attributes): - """Meta class factory.""" + """Catalog class factory.""" cls_providers = dict((name, provider) for name, provider in six.iteritems(attributes) if is_provider(provider)) @@ -93,13 +83,18 @@ class CatalogMetaClass(type): cls.inherited_providers = inherited_providers cls.providers = providers - cls.Pack = CatalogPackFactory(cls) + cls.Bundle = mcs.bundle_cls_factory(cls) for name, provider in six.iteritems(cls_providers): provider.bind = ProviderBinding(cls, name) return cls + @classmethod + def bundle_cls_factory(mcs, cls): + """Create bundle class for catalog.""" + return type('{0}Bundle', (CatalogBundle,), dict(catalog=cls)) + def __repr__(cls): """Return string representation of the catalog class.""" return '' @@ -120,11 +115,11 @@ class AbstractCatalog(object): :param inherited_providers: Dict of providers, that are inherited from parent catalogs - :type Pack: CatalogPack - :param Pack: Catalog's pack class + :type Bundle: CatalogBundle + :param Bundle: Catalog's bundle class """ - Pack = CatalogPackFactory + Bundle = CatalogBundle cls_providers = dict() inherited_providers = dict() diff --git a/dependency_injector/providers.py b/dependency_injector/providers.py index 501b90d8..b510bd6b 100644 --- a/dependency_injector/providers.py +++ b/dependency_injector/providers.py @@ -74,6 +74,11 @@ class Provider(object): """Reset all overriding providers.""" self.overridden_by = None + @property + def is_bound(self): + """Check if provider is bound to any catalog.""" + return bool(self.bind) + class Delegate(Provider): """Provider's delegate.""" diff --git a/tests/test_catalog.py b/tests/test_catalog.py index 8572f367..fc7e031a 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -25,13 +25,6 @@ class CatalogC(CatalogB): p32 = di.Provider() -class CatalogD(di.AbstractCatalog): - """Test catalog D.""" - - p11 = di.Provider() - p12 = di.Provider() - - class CatalogsInheritanceTests(unittest.TestCase): """Catalogs inheritance tests.""" @@ -78,55 +71,71 @@ class CatalogsInheritanceTests(unittest.TestCase): p32=CatalogC.p32)) -class CatalogPackTests(unittest.TestCase): - """Catalog pack test cases.""" +class CatalogBundleTests(unittest.TestCase): + """Catalog bundle test cases.""" def setUp(self): """Set test environment up.""" - self.pack = CatalogC.Pack(CatalogC.p11, - CatalogC.p12) + self.bundle = CatalogC.Bundle(CatalogC.p11, + CatalogC.p12) - def test_get_attr_from_pack(self): - """Test get providers (attribute) from pack.""" - self.assertIs(self.pack.p11, CatalogC.p11) - self.assertIs(self.pack.p12, CatalogC.p12) + def test_get_attr_from_bundle(self): + """Test get providers (attribute) from catalog bundle.""" + self.assertIs(self.bundle.p11, CatalogC.p11) + self.assertIs(self.bundle.p12, CatalogC.p12) - def test_get_attr_not_from_pack(self): - """Test get providers (attribute) that are not in pack.""" - self.assertRaises(di.Error, getattr, self.pack, 'p21') - self.assertRaises(di.Error, getattr, self.pack, 'p22') - self.assertRaises(di.Error, getattr, self.pack, 'p31') - self.assertRaises(di.Error, getattr, self.pack, 'p32') + def test_get_attr_not_from_bundle(self): + """Test get providers (attribute) that are not in bundle.""" + self.assertRaises(di.Error, getattr, self.bundle, 'p21') + self.assertRaises(di.Error, getattr, self.bundle, 'p22') + self.assertRaises(di.Error, getattr, self.bundle, 'p31') + self.assertRaises(di.Error, getattr, self.bundle, 'p32') - def test_get_method_from_pack(self): - """Test get providers (get() method) from pack.""" - self.assertIs(self.pack.get('p11'), CatalogC.p11) - self.assertIs(self.pack.get('p12'), CatalogC.p12) + def test_get_method_from_bundle(self): + """Test get providers (get() method) from bundle.""" + self.assertIs(self.bundle.get('p11'), CatalogC.p11) + self.assertIs(self.bundle.get('p12'), CatalogC.p12) - def test_get_method_not_from_pack(self): - """Test get providers (get() method) that are not in pack.""" - self.assertRaises(di.Error, self.pack.get, 'p21') - self.assertRaises(di.Error, self.pack.get, 'p22') - self.assertRaises(di.Error, self.pack.get, 'p31') - self.assertRaises(di.Error, self.pack.get, 'p32') + def test_get_method_not_from_bundle(self): + """Test get providers (get() method) that are not in bundle.""" + self.assertRaises(di.Error, self.bundle.get, 'p21') + self.assertRaises(di.Error, self.bundle.get, 'p22') + self.assertRaises(di.Error, self.bundle.get, 'p31') + self.assertRaises(di.Error, self.bundle.get, 'p32') def test_has(self): - """Test checks of providers availability in pack.""" - self.assertTrue(self.pack.has('p11')) - self.assertTrue(self.pack.has('p12')) + """Test checks of providers availability in bundle.""" + self.assertTrue(self.bundle.has('p11')) + self.assertTrue(self.bundle.has('p12')) - self.assertFalse(self.pack.has('p21')) - self.assertFalse(self.pack.has('p22')) - self.assertFalse(self.pack.has('p31')) - self.assertFalse(self.pack.has('p32')) + self.assertFalse(self.bundle.has('p21')) + self.assertFalse(self.bundle.has('p22')) + self.assertFalse(self.bundle.has('p31')) + self.assertFalse(self.bundle.has('p32')) - def test_create_pack_with_another_catalog_provider(self): - """Test that pack is not created with provider from another catalog.""" - self.assertRaises(di.Error, CatalogC.Pack, CatalogC.p31, CatalogD.p11) + def test_create_bundle_with_unbound_provider(self): + """Test that bundle is not created with unbound provider.""" + self.assertRaises(di.Error, CatalogC.Bundle, di.Provider()) - def test_create_pack_with_unbound_provider(self): - """Test that pack is not created with unbound provider.""" - self.assertRaises(di.Error, CatalogC.Pack, di.Provider()) + def test_create_bundle_with_another_catalog_provider(self): + """Test that bundle can not contain another catalog's provider.""" + class TestCatalog(di.AbstractCatalog): + """Test catalog.""" + + provider = di.Provider() + + self.assertRaises(di.Error, + CatalogC.Bundle, CatalogC.p31, TestCatalog.provider) + + def test_create_bundle_with_another_catalog_provider_with_same_name(self): + """Test that bundle can not contain another catalog's provider.""" + class TestCatalog(di.AbstractCatalog): + """Test catalog.""" + + p31 = di.Provider() + + self.assertRaises(di.Error, + CatalogC.Bundle, CatalogC.p31, TestCatalog.p31) class CatalogTests(unittest.TestCase): From 5799b6ff3305ea4470a0f1858adfb1ca59908e8d Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Sat, 17 Oct 2015 00:42:22 +0300 Subject: [PATCH 06/14] Update catalog provider bundles docs --- docs/catalogs/bundles.rst | 28 +++++++++++++++++++++ docs/catalogs/index.rst | 2 +- docs/catalogs/subsets.rst | 19 -------------- docs/images/catalogs/bundles.png | Bin 0 -> 108481 bytes docs/images/catalogs/subsets.png | Bin 98584 -> 0 bytes examples/catalogs/{packs.py => bundles.py} | 18 ++++++------- 6 files changed, 38 insertions(+), 29 deletions(-) create mode 100644 docs/catalogs/bundles.rst delete mode 100644 docs/catalogs/subsets.rst create mode 100644 docs/images/catalogs/bundles.png delete mode 100644 docs/images/catalogs/subsets.png rename examples/catalogs/{packs.py => bundles.py} (73%) diff --git a/docs/catalogs/bundles.rst b/docs/catalogs/bundles.rst new file mode 100644 index 00000000..6fd5dfed --- /dev/null +++ b/docs/catalogs/bundles.rst @@ -0,0 +1,28 @@ +Creating catalog provider bundles +--------------------------------- + +``di.AbstractCatalog.Bundle`` is a limited collection of catalog providers. +While catalog could be used as a centralized place for particular providers +group, such bundles of catalog providers can be used for creating several +limited scopes that could be passed to different subsystems. + +``di.AbstractCatalog.Bundle`` has exactly the same API as +``di.AbstractCatalog`` except of the limitations on getting providers. + +Each ``di.AbstractCatalog`` has a reference to its bundle class - +``di.AbstractCatalog.Bundle``. For example, if some concrete catalog has name +``SomeCatalog``, then its bundle class could be reached as +``SomeCatalog.Bundle``. + +``di.AbstractCatalog.Bundle`` expects to get the list of its catalog providers +as positional arguments and will limit the scope of created bundle to this +list. + +Example: + +.. image:: /images/catalogs/bundles.png + :width: 100% + :align: center + +.. literalinclude:: ../../examples/catalogs/bundles.py + :language: python diff --git a/docs/catalogs/index.rst b/docs/catalogs/index.rst index 3106ae5b..cfc3d579 100644 --- a/docs/catalogs/index.rst +++ b/docs/catalogs/index.rst @@ -21,5 +21,5 @@ of providers. writing operating - subsets + bundles overriding diff --git a/docs/catalogs/subsets.rst b/docs/catalogs/subsets.rst deleted file mode 100644 index be27061a..00000000 --- a/docs/catalogs/subsets.rst +++ /dev/null @@ -1,19 +0,0 @@ -Creating catalog subsets ------------------------- - -``di.AbstractCatalog`` subset is a limited collection of catalog providers. -While catalog could be used as a centralized place for particular providers -group, such subsets of catalog providers can be used for creating several -limited scopes that could be passed to different subsystems. - -``di.AbstractCatalog`` subsets could be created by instantiating of particular -catalog with passing provider names to the constructor. - -Example: - -.. image:: /images/catalogs/subsets.png - :width: 100% - :align: center - -.. literalinclude:: ../../examples/catalogs/subsets.py - :language: python diff --git a/docs/images/catalogs/bundles.png b/docs/images/catalogs/bundles.png new file mode 100644 index 0000000000000000000000000000000000000000..1e66d947fb5644decbf0d9097e8bb5f72bde6adb GIT binary patch literal 108481 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 literal 0 HcmV?d00001 diff --git a/docs/images/catalogs/subsets.png b/docs/images/catalogs/subsets.png deleted file mode 100644 index f09c0c0d9e6e88f9aa052c569f9f4d2e222ef4f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98584 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 diff --git a/examples/catalogs/packs.py b/examples/catalogs/bundles.py similarity index 73% rename from examples/catalogs/packs.py rename to examples/catalogs/bundles.py index 88720ee9..b6d6c8e2 100644 --- a/examples/catalogs/packs.py +++ b/examples/catalogs/bundles.py @@ -1,4 +1,4 @@ -"""Catalog subsets example.""" +"""Catalog bundles example.""" import dependency_injector as di @@ -22,7 +22,7 @@ class BaseWebView(object): """Initializer. :type services: Services - :param services: Subset of service providers + :param services: Bundle of service providers """ self.services = services @@ -35,11 +35,11 @@ class AuthView(BaseWebView): class PhotosView(BaseWebView): """Example photo processing web view.""" -# Creating example views with appropriate service provider packs: -auth_view = AuthView(Services.Pack(Services.users, - Services.auth)) -photos_view = PhotosView(Services.Pack(Services.users, - Services.photos)) +# Creating example views with appropriate service provider bundles: +auth_view = AuthView(Services.Bundle(Services.users, + Services.auth)) +photos_view = PhotosView(Services.Bundle(Services.users, + Services.photos)) # Making some asserts: assert auth_view.services.users is Services.users @@ -47,7 +47,7 @@ assert auth_view.services.auth is Services.auth try: auth_view.services.photos except di.Error: - # `photos` service provider is not in scope of `auth_view` services subset, + # `photos` service provider is not in scope of `auth_view` services bundle, # so `di.Error` will be raised. pass @@ -57,5 +57,5 @@ try: photos_view.services.auth except di.Error as exception: # `auth` service provider is not in scope of `photo_processing_view` - # services subset, so `di.Error` will be raised. + # services bundle, so `di.Error` will be raised. pass From 476e867dc99d25214f371b59ec1f10616dd133c7 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Sat, 17 Oct 2015 01:00:32 +0300 Subject: [PATCH 07/14] Restrict repeatedly binding of catalog providers --- dependency_injector/catalog.py | 5 +++++ tests/test_catalog.py | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index 2725f7c3..eb674756 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -86,6 +86,11 @@ class CatalogMetaClass(type): cls.Bundle = mcs.bundle_cls_factory(cls) for name, provider in six.iteritems(cls_providers): + if provider.is_bound: + raise Error('Provider {0} has been already bound to catalog' + '{1} as "{2}"'.format(provider, + provider.bind.catalog, + provider.bind.name)) provider.bind = ProviderBinding(cls, name) return cls diff --git a/tests/test_catalog.py b/tests/test_catalog.py index fc7e031a..c5e1e182 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -71,6 +71,23 @@ class CatalogsInheritanceTests(unittest.TestCase): p32=CatalogC.p32)) +class CatalogProvidersBindingTests(unittest.TestCase): + """Catalog providers binding test cases.""" + + def test_provider_is_bound(self): + """Test that providers are bound to the catalogs.""" + self.assertIs(CatalogA.p11.bind.catalog, CatalogA) + self.assertEquals(CatalogA.p11.bind.name, 'p11') + + self.assertIs(CatalogA.p12.bind.catalog, CatalogA) + self.assertEquals(CatalogA.p12.bind.name, 'p12') + + def test_provider_rebinding(self): + """Test that provider could not be bound twice.""" + self.assertRaises(di.Error, type, 'TestCatalog', (di.AbstractCatalog,), + dict(some_name=CatalogA.p11)) + + class CatalogBundleTests(unittest.TestCase): """Catalog bundle test cases.""" From 47127e28395a6ef46fb3d7a209febcdaad30138e Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Sat, 17 Oct 2015 01:16:12 +0300 Subject: [PATCH 08/14] Update note in changelog about adding catalog provider bundles feature --- docs/main/changelog.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/main/changelog.rst b/docs/main/changelog.rst index b2dfed0e..93016d4c 100644 --- a/docs/main/changelog.rst +++ b/docs/main/changelog.rst @@ -12,7 +12,7 @@ Development version ------------------- - Add functionality for decorating classes with ``@di.inject``. -- Add functionality for creating ``di.AbstractCatalog`` subsets. +- Add functionality for creating ``di.AbstractCatalog`` provider bundles. - Add enhancement for ``di.AbstractCatalog`` inheritance. - Add images for catalog "Writing catalogs" and "Operating with catalogs" examples. From 6206cdde8d6c18748faf9e472153d5fce8646599 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 10:31:21 +0300 Subject: [PATCH 09/14] Update catalog bundles example --- examples/catalogs/bundles/catalogs.py | 59 +++++++++++++++++++++++++++ examples/catalogs/bundles/services.py | 17 ++++++++ examples/catalogs/bundles/views.py | 21 ++++++++++ 3 files changed, 97 insertions(+) create mode 100644 examples/catalogs/bundles/catalogs.py create mode 100644 examples/catalogs/bundles/services.py create mode 100644 examples/catalogs/bundles/views.py diff --git a/examples/catalogs/bundles/catalogs.py b/examples/catalogs/bundles/catalogs.py new file mode 100644 index 00000000..3d876c0e --- /dev/null +++ b/examples/catalogs/bundles/catalogs.py @@ -0,0 +1,59 @@ +"""Catalog bundles example.""" + +import dependency_injector as di + +import services +import views + + +# Declaring services catalog: +class Services(di.AbstractCatalog): + """Example catalog of service providers.""" + + users = di.Factory(services.UsersService) + """:type: (di.Provider) -> services.UsersService""" + + auth = di.Factory(services.AuthService) + """:type: (di.Provider) -> services.AuthService""" + + photos = di.Factory(services.PhotosService) + """:type: (di.Provider) -> services.PhotosService""" + + +# Declaring views catalog: +class Views(di.AbstractCatalog): + """Example catalog of web views.""" + + auth = di.Factory(views.AuthView, + services=Services.Bundle(Services.users, + Services.auth)) + """:type: (di.Provider) -> views.AuthView""" + + photos = di.Factory(views.PhotosView, + services=Services.Bundle(Services.users, + Services.photos)) + """:type: (di.Provider) -> views.PhotosView""" + + +# Creating example views: +auth_view = Views.auth() +photos_view = Views.photos() + +# Making some asserts: +assert auth_view.services.users is Services.users +assert auth_view.services.auth is Services.auth +try: + auth_view.services.photos +except di.Error: + # `photos` service provider is not in scope of `auth_view` services bundle, + # so `di.Error` will be raised. + pass + +assert photos_view.services.users is Services.users +assert photos_view.services.photos is Services.photos +try: + photos_view.services.auth +except di.Error as exception: + # `auth` service provider is not in scope of `photo_processing_view` + # services bundle, so `di.Error` will be raised. + pass diff --git a/examples/catalogs/bundles/services.py b/examples/catalogs/bundles/services.py new file mode 100644 index 00000000..91b9cae5 --- /dev/null +++ b/examples/catalogs/bundles/services.py @@ -0,0 +1,17 @@ +"""Example services.""" + + +class BaseService(object): + """Example base class of service.""" + + +class UsersService(BaseService): + """Example users service.""" + + +class AuthService(BaseService): + """Example auth service.""" + + +class PhotosService(BaseService): + """Example photo service.""" diff --git a/examples/catalogs/bundles/views.py b/examples/catalogs/bundles/views.py new file mode 100644 index 00000000..658ff9f0 --- /dev/null +++ b/examples/catalogs/bundles/views.py @@ -0,0 +1,21 @@ +"""Example web views.""" + + +class BaseWebView(object): + """Example base class of web view.""" + + def __init__(self, services): + """Initializer. + + :type services: Services + :param services: Bundle of service providers + """ + self.services = services + + +class AuthView(BaseWebView): + """Example auth web view.""" + + +class PhotosView(BaseWebView): + """Example photo processing web view.""" From 682c4498ca9db7b5134236cb6d7d85974399ba9f Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 10:31:53 +0300 Subject: [PATCH 10/14] Remove old catalog bundles example --- examples/catalogs/bundles.py | 61 ------------------------------------ 1 file changed, 61 deletions(-) delete mode 100644 examples/catalogs/bundles.py diff --git a/examples/catalogs/bundles.py b/examples/catalogs/bundles.py deleted file mode 100644 index b6d6c8e2..00000000 --- a/examples/catalogs/bundles.py +++ /dev/null @@ -1,61 +0,0 @@ -"""Catalog bundles example.""" - -import dependency_injector as di - - -# Declaring example services catalog: -class Services(di.AbstractCatalog): - """Example catalog of service providers.""" - - users = di.Provider() - - auth = di.Provider() - - photos = di.Provider() - - -# Declaring example base class for some web views: -class BaseWebView(object): - """Example base class of web view.""" - - def __init__(self, services): - """Initializer. - - :type services: Services - :param services: Bundle of service providers - """ - self.services = services - - -# Declaring several example web views: -class AuthView(BaseWebView): - """Example auth web view.""" - - -class PhotosView(BaseWebView): - """Example photo processing web view.""" - -# Creating example views with appropriate service provider bundles: -auth_view = AuthView(Services.Bundle(Services.users, - Services.auth)) -photos_view = PhotosView(Services.Bundle(Services.users, - Services.photos)) - -# Making some asserts: -assert auth_view.services.users is Services.users -assert auth_view.services.auth is Services.auth -try: - auth_view.services.photos -except di.Error: - # `photos` service provider is not in scope of `auth_view` services bundle, - # so `di.Error` will be raised. - pass - -assert photos_view.services.users is Services.users -assert photos_view.services.photos is Services.photos -try: - photos_view.services.auth -except di.Error as exception: - # `auth` service provider is not in scope of `photo_processing_view` - # services bundle, so `di.Error` will be raised. - pass From 53025756d87b5f4121b5fa78b0dbb1b648eee77d Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 10:47:24 +0300 Subject: [PATCH 11/14] Fix bug with injections of catalog bundles --- dependency_injector/catalog.py | 2 ++ tests/test_injections.py | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index eb674756..61f1663c 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -51,6 +51,8 @@ class CatalogBundle(object): def __getattr__(self, item): """Raise an error on every attempt to get undefined provider.""" + if item.startswith('__') and item.endswith('__'): + return super(CatalogBundle, self).__getattr__(item) self._raise_undefined_provider_error(item) def __repr__(self): diff --git a/tests/test_injections.py b/tests/test_injections.py index f84ad280..c96567b7 100644 --- a/tests/test_injections.py +++ b/tests/test_injections.py @@ -23,6 +23,17 @@ class InjectionTests(unittest.TestCase): injection = di.Injection('some_arg_name', di.Factory(object)) self.assertIsInstance(injection.value, object) + def test_value_with_catalog_bundle_injectable(self): + """Test Injection value property with catalog bundle.""" + class TestCatalog(di.AbstractCatalog): + """Test catalog.""" + + provider = di.Provider() + injection = di.Injection('some_arg_name', + TestCatalog.Bundle(TestCatalog.provider)) + + self.assertIsInstance(injection.value, TestCatalog.Bundle) + class KwArgTests(unittest.TestCase): """Keyword arg injection test cases.""" From c13bee6fb5b582b6552da2d0cc65851bf5126e05 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 10:50:17 +0300 Subject: [PATCH 12/14] Add optimization for `Injection.value` property --- dependency_injector/injections.py | 5 +++-- docs/main/changelog.rst | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/dependency_injector/injections.py b/dependency_injector/injections.py index bc0cf797..a7a29084 100644 --- a/dependency_injector/injections.py +++ b/dependency_injector/injections.py @@ -21,17 +21,18 @@ class Injection(object): """Base injection class.""" __IS_INJECTION__ = True - __slots__ = ('name', 'injectable') + __slots__ = ('name', 'injectable', 'is_provider') def __init__(self, name, injectable): """Initializer.""" self.name = name self.injectable = injectable + self.is_provider = is_provider(injectable) @property def value(self): """Return injectable value.""" - if is_provider(self.injectable): + if self.is_provider: return self.injectable() return self.injectable diff --git a/docs/main/changelog.rst b/docs/main/changelog.rst index 93016d4c..20c321eb 100644 --- a/docs/main/changelog.rst +++ b/docs/main/changelog.rst @@ -18,6 +18,8 @@ Development version examples. - Add support of Python 3.5. - Add support of six 1.10.0. +- Add optimization for ``di.Injection.value`` property that will compute + type of injection once, instead of doing this on every call. - Add minor refactorings and code style fixes. 0.9.5 From 017af8ff45b12a3bebc7693093281572115e43ae Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 11:39:34 +0300 Subject: [PATCH 13/14] Update catalog bundle docs --- docs/catalogs/bundles.rst | 14 +++++++++++++- docs/images/catalogs/bundles.png | Bin 108481 -> 93333 bytes 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/catalogs/bundles.rst b/docs/catalogs/bundles.rst index 6fd5dfed..49e916e2 100644 --- a/docs/catalogs/bundles.rst +++ b/docs/catalogs/bundles.rst @@ -24,5 +24,17 @@ Example: :width: 100% :align: center -.. literalinclude:: ../../examples/catalogs/bundles.py +Listing of `services.py`: + +.. literalinclude:: ../../examples/catalogs/bundles/services.py + :language: python + +Listing of `views.py`: + +.. literalinclude:: ../../examples/catalogs/bundles/views.py + :language: python + +Listing of `catalogs.py`: + +.. literalinclude:: ../../examples/catalogs/bundles/catalogs.py :language: python diff --git a/docs/images/catalogs/bundles.png b/docs/images/catalogs/bundles.png index 1e66d947fb5644decbf0d9097e8bb5f72bde6adb..14a20d22fda93e3a15947b74be4e77f006672697 100644 GIT binary patch literal 93333 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 z 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 literal 108481 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 From 7a4ffa140fa90b0f5aeec2927cb1918f29ca21a8 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Mon, 19 Oct 2015 12:12:38 +0300 Subject: [PATCH 14/14] Add functionality of checking catalog bundles ownership --- dependency_injector/__init__.py | 6 +++++ dependency_injector/catalog.py | 7 ++++++ dependency_injector/utils.py | 22 ++++++++++++++++- tests/test_catalog.py | 10 ++++++++ tests/test_utils.py | 42 +++++++++++++++++++++++++++++++++ 5 files changed, 86 insertions(+), 1 deletion(-) diff --git a/dependency_injector/__init__.py b/dependency_injector/__init__.py index 8420bd47..5e38585a 100644 --- a/dependency_injector/__init__.py +++ b/dependency_injector/__init__.py @@ -1,6 +1,7 @@ """Dependency injector.""" from .catalog import AbstractCatalog +from .catalog import CatalogBundle from .catalog import override from .providers import Provider @@ -30,6 +31,8 @@ from .utils import is_kwarg_injection from .utils import is_attribute_injection from .utils import is_method_injection from .utils import is_catalog +from .utils import is_catalog_bundle +from .utils import ensure_is_catalog_bundle from .errors import Error @@ -37,6 +40,7 @@ from .errors import Error __all__ = ( # Catalogs 'AbstractCatalog', + 'CatalogBundle', 'override', # Providers @@ -69,6 +73,8 @@ __all__ = ( 'is_attribute_injection', 'is_method_injection', 'is_catalog', + 'is_catalog_bundle', + 'ensure_is_catalog_bundle', # Errors 'Error', diff --git a/dependency_injector/catalog.py b/dependency_injector/catalog.py index 61f1663c..f0abb854 100644 --- a/dependency_injector/catalog.py +++ b/dependency_injector/catalog.py @@ -6,6 +6,7 @@ from .errors import Error from .utils import is_provider from .utils import is_catalog +from .utils import ensure_is_catalog_bundle class CatalogBundle(object): @@ -14,6 +15,7 @@ class CatalogBundle(object): catalog = None """:type: AbstractCatalog""" + __IS_CATALOG_BUNDLE__ = True __slots__ = ('providers', '__dict__') def __init__(self, *providers): @@ -134,6 +136,11 @@ class AbstractCatalog(object): __IS_CATALOG__ = True + @classmethod + def is_bundle_owner(cls, bundle): + """Check if catalog is bundle owner.""" + return ensure_is_catalog_bundle(bundle) and bundle.catalog is cls + @classmethod def filter(cls, provider_type): """Return dict of providers, that are instance of provided type.""" diff --git a/dependency_injector/utils.py b/dependency_injector/utils.py index 42a18202..29547b9c 100644 --- a/dependency_injector/utils.py +++ b/dependency_injector/utils.py @@ -17,7 +17,10 @@ def is_provider(instance): def ensure_is_provider(instance): - """Check if instance is provider instance, otherwise raise and error.""" + """Check if instance is provider instance and return it. + + :raise: Error if provided instance is not provider. + """ if not is_provider(instance): raise Error('Expected provider instance, ' 'got {0}'.format(str(instance))) @@ -62,6 +65,23 @@ def is_catalog(instance): getattr(instance, '__IS_CATALOG__', False) is True) +def is_catalog_bundle(instance): + """Check if instance is catalog bundle instance.""" + return (not isinstance(instance, six.class_types) and + getattr(instance, '__IS_CATALOG_BUNDLE__', False) is True) + + +def ensure_is_catalog_bundle(instance): + """Check if instance is catalog bundle instance and return it. + + :raise: Error if provided instance is not catalog bundle. + """ + if not is_catalog_bundle(instance): + raise Error('Expected catalog bundle instance, ' + 'got {0}'.format(str(instance))) + return instance + + def get_injectable_kwargs(kwargs, injections): """Return dictionary of kwargs, patched with injections.""" init_kwargs = dict(((injection.name, injection.value) diff --git a/tests/test_catalog.py b/tests/test_catalog.py index c5e1e182..f55cff9e 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -154,6 +154,16 @@ class CatalogBundleTests(unittest.TestCase): self.assertRaises(di.Error, CatalogC.Bundle, CatalogC.p31, TestCatalog.p31) + def test_is_bundle_owner(self): + """Test that catalog bundle is owned by catalog.""" + self.assertTrue(CatalogC.is_bundle_owner(self.bundle)) + self.assertFalse(CatalogB.is_bundle_owner(self.bundle)) + self.assertFalse(CatalogA.is_bundle_owner(self.bundle)) + + def test_is_bundle_owner_with_not_bundle_instance(self): + """Test that check of bundle ownership raises error with not bundle.""" + self.assertRaises(di.Error, CatalogC.is_bundle_owner, object()) + class CatalogTests(unittest.TestCase): """Catalog test cases.""" diff --git a/tests/test_utils.py b/tests/test_utils.py index de27bab1..61705ff1 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -208,3 +208,45 @@ class IsCatalogTests(unittest.TestCase): def test_with_object(self): """Test with object.""" self.assertFalse(di.is_catalog(object())) + + +class IsCatalogBundleTests(unittest.TestCase): + """`is_catalog_bundle()` test cases.""" + + def test_with_instance(self): + """Test with instance.""" + self.assertTrue(di.is_catalog_bundle(di.CatalogBundle())) + + def test_with_cls(self): + """Test with class.""" + self.assertFalse(di.is_catalog_bundle(di.CatalogBundle)) + + def test_with_string(self): + """Test with string.""" + self.assertFalse(di.is_catalog_bundle('some_string')) + + def test_with_object(self): + """Test with object.""" + self.assertFalse(di.is_catalog_bundle(object())) + + +class EnsureIsCatalogBundleTests(unittest.TestCase): + """`ensure_is_catalog_bundle` test cases.""" + + def test_with_instance(self): + """Test with instance.""" + bundle = di.CatalogBundle() + self.assertIs(di.ensure_is_catalog_bundle(bundle), bundle) + + def test_with_class(self): + """Test with class.""" + self.assertRaises(di.Error, di.ensure_is_catalog_bundle, + di.CatalogBundle) + + def test_with_string(self): + """Test with string.""" + self.assertRaises(di.Error, di.ensure_is_catalog_bundle, 'some_string') + + def test_with_object(self): + """Test with object.""" + self.assertRaises(di.Error, di.ensure_is_catalog_bundle, object())