mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-05-22 21:46:17 +03:00
Return types module with deprecation warning
This commit is contained in:
parent
c3981b02fc
commit
65ce9d54a2
|
@ -14,8 +14,6 @@ from typing import (
|
|||
Coroutine as _Coroutine,
|
||||
)
|
||||
|
||||
from .types import Provider as _Provider
|
||||
|
||||
|
||||
Injection = Any
|
||||
T = TypeVar('T')
|
||||
|
@ -30,7 +28,7 @@ class OverridingContext:
|
|||
class Provider(Generic[T]):
|
||||
def __init__(self) -> None: ...
|
||||
def __call__(self, *args: Injection, **kwargs: Injection) -> T: ...
|
||||
def __deepcopy__(self, memo: Optional[Dict[str, Any]]) -> Provider: ...
|
||||
def __deepcopy__(self, memo: Optional[Dict[Any, Any]]) -> Provider: ...
|
||||
def __str__(self) -> str: ...
|
||||
def __repr__(self) -> str: ...
|
||||
@property
|
||||
|
@ -43,7 +41,7 @@ class Provider(Generic[T]):
|
|||
def delegate(self) -> Provider: ...
|
||||
@property
|
||||
def provider(self) -> Provider: ...
|
||||
def _copy_overridings(self, copied: Provider, memo: Optional[Dict[str, Any]]) -> None: ...
|
||||
def _copy_overridings(self, copied: Provider, memo: Optional[Dict[Any, Any]]) -> None: ...
|
||||
|
||||
|
||||
class Object(Provider, Generic[T]):
|
||||
|
@ -316,7 +314,7 @@ def is_delegated(instance: Any) -> bool: ...
|
|||
def represent_provider(provider: Provider, provides: Any) -> str: ...
|
||||
|
||||
|
||||
def deepcopy(instance: Any, memo: Optional[Dict[str, Any]]): Any: ...
|
||||
def deepcopy(instance: Any, memo: Optional[Dict[Any, Any]]): Any: ...
|
||||
|
||||
|
||||
def merge_dicts(dict1: Dict[Any, Any], dict2: Dict[Any, Any]) -> Dict[Any, Any]: ...
|
||||
|
|
|
@ -3,13 +3,12 @@ import warnings
|
|||
|
||||
|
||||
warnings.warn(
|
||||
message=(
|
||||
'Types module is deprecated since version 3.44.0. Use "Provider" class from the '
|
||||
'"providers" module: providers.Provider[SomeClass]'
|
||||
),
|
||||
'Types module is deprecated since version 3.44.0. Use "providers" module instead: '
|
||||
'providers.Provider[SomeClass]',
|
||||
category=DeprecationWarning,
|
||||
)
|
||||
|
||||
|
||||
Injection = Any
|
||||
T = TypeVar('T')
|
||||
|
||||
|
|
|
@ -139,6 +139,11 @@ class ProviderTests(unittest.TestCase):
|
|||
self.assertIsNot(overriding_provider, overriding_provider_copy)
|
||||
self.assertIsInstance(overriding_provider_copy, providers.Provider)
|
||||
|
||||
def test_generic_type(self):
|
||||
provider: providers.Provider[object] = providers.Factory(object)
|
||||
some_object = provider()
|
||||
self.assertIsInstance(some_object, object)
|
||||
|
||||
def test_repr(self):
|
||||
self.assertEqual(repr(self.provider),
|
||||
'<dependency_injector.providers.'
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
import unittest
|
||||
|
||||
from dependency_injector import providers
|
||||
|
||||
|
||||
class SomeClass:
|
||||
...
|
||||
|
||||
|
||||
class TypesTest(unittest.TestCase):
|
||||
|
||||
def test_provider(self):
|
||||
provider: providers.Provider[SomeClass] = providers.Factory(SomeClass)
|
||||
some_object = provider()
|
||||
self.assertIsInstance(some_object, SomeClass)
|
Loading…
Reference in New Issue
Block a user