mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-05-23 14:59:08 +03:00
Add tests for defined None values in required/strict mode
This commit is contained in:
parent
bafb865127
commit
d3d907d4e5
|
@ -105,6 +105,14 @@ class ConfigTests(unittest.TestCase):
|
||||||
with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'):
|
with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'):
|
||||||
provider()
|
provider()
|
||||||
|
|
||||||
|
def test_required_defined_none(self):
|
||||||
|
provider = providers.Callable(
|
||||||
|
lambda value: value,
|
||||||
|
self.config.a.required(),
|
||||||
|
)
|
||||||
|
self.config.from_dict({'a': None})
|
||||||
|
self.assertIsNone(provider())
|
||||||
|
|
||||||
def test_required_no_side_effect(self):
|
def test_required_no_side_effect(self):
|
||||||
_ = providers.Callable(
|
_ = providers.Callable(
|
||||||
lambda value: value,
|
lambda value: value,
|
||||||
|
@ -206,6 +214,11 @@ class ConfigTests(unittest.TestCase):
|
||||||
with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'):
|
with self.assertRaisesRegex(errors.Error, 'Undefined configuration option "config.a"'):
|
||||||
self.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.assertIsNone(self.config.a())
|
||||||
|
|
||||||
def test_getting_of_special_attributes(self):
|
def test_getting_of_special_attributes(self):
|
||||||
with self.assertRaises(AttributeError):
|
with self.assertRaises(AttributeError):
|
||||||
self.config.__name__
|
self.config.__name__
|
||||||
|
|
Loading…
Reference in New Issue
Block a user