feat: add WuttaConfigProfile base class
convenience for use with various configurable features/services etc.
This commit is contained in:
parent
a721e63275
commit
ad6a3377ab
2 changed files with 105 additions and 1 deletions
|
@ -12,7 +12,7 @@ from wuttjamaican import conf as mod
|
|||
from wuttjamaican import conf
|
||||
from wuttjamaican.exc import ConfigurationError
|
||||
from wuttjamaican.app import AppHandler
|
||||
from wuttjamaican.testing import FileTestCase
|
||||
from wuttjamaican.testing import FileTestCase, ConfigTestCase
|
||||
|
||||
|
||||
class TestWuttaConfig(FileTestCase):
|
||||
|
@ -867,3 +867,21 @@ class TestMakeConfig(FileTestCase):
|
|||
foo_cls.assert_called_once_with()
|
||||
foo_obj.configure.assert_called_once_with(testconfig)
|
||||
foo_obj.startup.assert_called_once_with(testconfig)
|
||||
|
||||
|
||||
class TestWuttaConfigProfile(ConfigTestCase):
|
||||
|
||||
def make_profile(self, key):
|
||||
return mod.WuttaConfigProfile(self.config, key)
|
||||
|
||||
def test_section(self):
|
||||
profile = self.make_profile('default')
|
||||
self.assertRaises(NotImplementedError, getattr, profile, 'section')
|
||||
|
||||
def test_get_str(self):
|
||||
self.config.setdefault('wutta.telemetry.default.submit_url', '/nodes/telemetry')
|
||||
with patch.object(mod.WuttaConfigProfile, 'section', new='wutta.telemetry'):
|
||||
profile = self.make_profile('default')
|
||||
self.assertEqual(profile.section, 'wutta.telemetry')
|
||||
url = profile.get_str('submit_url')
|
||||
self.assertEqual(url, '/nodes/telemetry')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue