def test_subsection_keys(self): c = Configuration() c.set_default('%s.param1' % self.section, '123') c.set('%s.param2' % self.section, '456') self.assertEqual(['param1', 'param2'], sorted(c.section(self.section).keys()))
def test_subsection_items(self): c = Configuration() c.set('%s.param1' % self.section, 'value1') c.set_default('%s.param2' % self.section, 'value2') self.assertEqual([('param1', 'value1'), ('param2', 'value2')], sorted(c.section(self.section).items()))
def test_subsection_keys(self): c = Configuration() c.set_default('%s.param1' % self.section, '123') c.set('%s.param2' % self.section, '456') self.assertEqual( ['param1', 'param2'], sorted(c.section(self.section).keys()))
def test_subsection_items(self): c = Configuration() c.set('%s.param1' % self.section, 'value1') c.set_default('%s.param2' % self.section, 'value2') self.assertEqual( [('param1', 'value1'), ('param2', 'value2')], sorted(c.section(self.section).items()))
def test_subsection_contains(self): c = Configuration() c.set('section1.param1', '123') c.set_default('section2.param2', '234') self.assertTrue('param1' in c.section('section1')) self.assertTrue('param2' in c.section('section2')) self.assertFalse('param1' in c.section('section2'))
def config(self): config = Configuration() schema = ConfigSchemaRegistry.get_schema('rabbitmq', Version(1000000)) if schema: for parameter in schema.parameters: if not parameter.default: continue config.set_default(parameter.name, parameter.default) else: print("RabbitMQ schema not found") return config
def _parse_config_resources(self, resources, schema=None): config = Configuration(schema) # Apply defaults if schema: for parameter in filter(lambda p: p.default, schema.parameters): if not parameter.section or parameter.section == 'DEFAULT': config.set_default(parameter.name, parameter.default) else: config.set_default( '%s.%s' % (parameter.section, parameter.name), parameter.default) for resource in reversed(resources): self._parse_config_file( Mark(resource.path), resource.contents, config, schema, issue_reporter=resource) return config
def _parse_config_resources(self, resources, schema=None): config = Configuration() # Apply defaults if schema: for parameter in filter(lambda p: p.default, schema.parameters): if parameter.section == 'DEFAULT': config.set_default(parameter.name, parameter.default) else: config.set_default( '%s.%s' % (parameter.section, parameter.name), parameter.default) for resource in reversed(resources): self._parse_config_file(Mark(resource.path), resource.contents, config, schema, issue_reporter=resource) return config
def test_keys(self): c = Configuration() c.set_default('section1.param1', '123') c.set('section2.param1', '456') self.assertEqual(['section1', 'section2'], sorted(c.keys()))
def test_is_default_returns_false_if_both_values_set(self): c = Configuration() c.set_default(self.fullparam, self.default_value) c.set(self.fullparam, self.value) self.assertFalse(c.is_default(self.fullparam))
def test_is_default_returns_true_if_only_default_value_set(self): c = Configuration() c.set_default(self.fullparam, self.default_value) self.assertTrue(c.is_default(self.fullparam))
def test_normal_overrides_default(self): c = Configuration() c.set(self.fullparam, self.value) c.set_default(self.fullparam, self.default_value) self.assertEqual(self.value, c.get(self.fullparam))
def test_contains_default(self): c = Configuration() c.set_default(self.fullparam, self.default_value) self.assertTrue(c.contains(self.fullparam)) self.assertFalse(c.contains(self.fullparam, ignoreDefault=True))