Add tests for the .provided attribute to the majority of the providers

This commit is contained in:
Roman Mogylatov 2020-08-20 16:51:47 -04:00
parent 0509af8061
commit c537d3a3ac
6 changed files with 27 additions and 0 deletions

View File

@ -150,6 +150,10 @@ class ObjectProviderTests(unittest.TestCase):
def test_is_provider(self):
self.assertTrue(providers.is_provider(providers.Object(object())))
def test_provided_instance_provider(self):
provider = providers.Object(object())
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call_object_provider(self):
obj = object()
self.assertIs(providers.Object(obj)(), obj)
@ -264,6 +268,9 @@ class DependencyTests(unittest.TestCase):
def test_is_provider(self):
self.assertTrue(providers.is_provider(self.provider))
def test_provided_instance_provider(self):
self.assertIsInstance(self.provider.provided, providers.ProvidedInstance)
def test_call_overridden(self):
self.provider.provided_by(providers.Factory(list))
self.assertIsInstance(self.provider(), list)

View File

@ -22,6 +22,10 @@ class CallableTests(unittest.TestCase):
def test_init_with_not_callable(self):
self.assertRaises(errors.Error, providers.Callable, 123)
def test_provided_instance_provider(self):
provider = providers.Callable(_example)
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call(self):
provider = providers.Callable(lambda: True)
self.assertTrue(provider())

View File

@ -60,6 +60,10 @@ class FactoryTests(unittest.TestCase):
with self.assertRaises(errors.Error):
ExampleProvider(list)
def test_provided_instance_provider(self):
provider = providers.Factory(Example)
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call(self):
provider = providers.Factory(Example)

View File

@ -12,6 +12,10 @@ class ListTests(unittest.TestCase):
def test_is_provider(self):
self.assertTrue(providers.is_provider(providers.List()))
def test_provided_instance_provider(self):
provider = providers.List()
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call_with_init_positional_args(self):
provider = providers.List('i1', 'i2')

View File

@ -16,6 +16,10 @@ class SelectorTests(unittest.TestCase):
def test_is_provider(self):
self.assertTrue(providers.is_provider(providers.Selector(self.selector)))
def test_provided_instance_provider(self):
provider = providers.Selector(self.selector)
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call(self):
provider = providers.Selector(
self.selector,

View File

@ -62,6 +62,10 @@ class _BaseSingletonTestCase(object):
with self.assertRaises(errors.Error):
ExampleProvider(list)
def test_provided_instance_provider(self):
provider = providers.Singleton(Example)
self.assertIsInstance(provider.provided, providers.ProvidedInstance)
def test_call(self):
provider = self.singleton_cls(Example)