|
@@ -6,6 +6,7 @@ import os.path
|
6
|
6
|
from lodel.settings.utils import *
|
7
|
7
|
from lodel.plugin.exceptions import *
|
8
|
8
|
from lodel.settings.settings_loader import SettingsLoader
|
|
9
|
+from lodel.validator.validator import *
|
9
|
10
|
|
10
|
11
|
|
11
|
12
|
|
|
@@ -87,12 +88,21 @@ class SettingsLoaderTestCase(unittest.TestCase):
|
87
|
88
|
""" Testing behavior of default value in getoption """
|
88
|
89
|
loader = SettingsLoader('tests/settings/settings_examples/simple.conf.d')
|
89
|
90
|
# for non existing keys in file
|
90
|
|
- value = loader.getoption('lodel2.foo.bar', 'foofoofoo', dummy_validator, 'hello 42', False)
|
|
91
|
+ value = loader.getoption('lodel2.foo.bar', 'foofoofoo', dummy_validator, 'hello 42')
|
91
|
92
|
self.assertEqual(value, 'hello 42')
|
92
|
93
|
# for non existing section in file
|
93
|
|
- value = loader.getoption('lodel2.foofoo', 'foofoofoo', dummy_validator, 'hello 42', False)
|
|
94
|
+ value = loader.getoption('lodel2.foofoo', 'foofoofoo', dummy_validator, 'hello 42')
|
94
|
95
|
self.assertEqual(value, 'hello 42')
|
95
|
96
|
|
|
97
|
+ def test_geoption_invalid_default_value(self):
|
|
98
|
+ """ Testing the behavior when the default value is invalid """
|
|
99
|
+ loader = SettingsLoader('tests/settings/settings_examples/simple.conf.d')
|
|
100
|
+ mandatory_validator = Validator('string', none_is_valid=False)
|
|
101
|
+ with self.assertRaises(SettingsErrors):
|
|
102
|
+ value = loader.getoption(
|
|
103
|
+ 'lodel2.foo.bar', 'foofoofooDEFAULT', mandatory_validator)
|
|
104
|
+ loader.raise_errors()
|
|
105
|
+
|
96
|
106
|
def test_getoption_complex(self):
|
97
|
107
|
""" Testing behavior of getoption with less simple files & confs """
|
98
|
108
|
|
|
@@ -235,10 +245,10 @@ class SettingsLoaderTestCase(unittest.TestCase):
|
235
|
245
|
loader = SettingsLoader('tests/settings/settings_examples/conf_setdef.d')
|
236
|
246
|
|
237
|
247
|
# for non existing keys in file
|
238
|
|
- value = loader.getoption('lodel2.foo.bar', 'foofoofoo', dummy_validator, 'hello 42', False)
|
|
248
|
+ value = loader.getoption('lodel2.foo.bar', 'foofoofoo', dummy_validator, 'hello 42')
|
239
|
249
|
self.assertEqual(value, 'hello 42')
|
240
|
250
|
# for non existing section in file
|
241
|
|
- value = loader.getoption('lodel2.foofoo', 'foofoofoo', dummy_validator, 'hello 42', False)
|
|
251
|
+ value = loader.getoption('lodel2.foofoo', 'foofoofoo', dummy_validator, 'hello 42')
|
242
|
252
|
self.assertEqual(value, 'hello 42')
|
243
|
253
|
|
244
|
254
|
loader.setoption('lodel2.foo.bar', 'foofoofoo', 'test ok', dummy_validator)
|
|
@@ -253,8 +263,3 @@ class SettingsLoaderTestCase(unittest.TestCase):
|
253
|
263
|
|
254
|
264
|
os.remove('tests/settings/settings_examples/conf_setdef.d/generated.ini')
|
255
|
265
|
|
256
|
|
- def test_invalid_conf(self):
|
257
|
|
- from lodel.settings.settings import Settings
|
258
|
|
- Settings.stop()
|
259
|
|
- with self.assertRaises((SettingsErrors, PluginError)):
|
260
|
|
- Settings('tests/settings/settings_examples/bad_conf.d')
|