From a4cee7d4d52631575c32f167fd5d10e94d8ef64d Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Sun, 13 Jun 2021 13:50:13 -0400 Subject: [PATCH] Add tests for ini files env interpolation --- .../providers/test_configuration_py2_py3.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/unit/providers/test_configuration_py2_py3.py b/tests/unit/providers/test_configuration_py2_py3.py index b583236e..9a0fc6d6 100644 --- a/tests/unit/providers/test_configuration_py2_py3.py +++ b/tests/unit/providers/test_configuration_py2_py3.py @@ -654,6 +654,29 @@ class ConfigFromIniWithEnvInterpolationTests(unittest.TestCase): self.assertEqual(self.config.section1.value1(), '${CONFIG_TEST_ENV}') self.assertEqual(self.config.section1.value2(), '${CONFIG_TEST_PATH}/path') + def test_default_values(self): + os.environ['DEFINED'] = 'defined' + self.addCleanup(os.environ.pop, 'DEFINED') + + 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' + ) + + self.config.from_ini(self.config_file) + + self.assertEqual( + self.config.section(), + { + 'defined_with_default': 'defined', + 'undefined_with_default': 'default', + 'complex': 'defined/path/defined/${UNDEFINED}/default', + }, + ) + class ConfigFromYamlTests(unittest.TestCase):