def test_from_file_for_class(self): builder = ConfigurationBindingsBuilder() builder.add_configs_for_class(ConfigurationBindingsTest) bindings = builder.build() self.assertEquals('tests/base/ConfigurationBindingsTest', bindings.get('config_location')) self.assertIsNone(bindings.get('missing'))
def test_from_file_for_class_with_defaults(self): builder = ConfigurationBindingsBuilder() builder.add_configs_for_class(ConfigurationBindingsTest) builder.set_default('missing', 'MISSING') builder.set_default('config_location', 'IGNORE') bindings = builder.build() self.assertEquals('MISSING', bindings.get('missing')) self.assertEquals('tests/base/ConfigurationBindingsTest', bindings.get('config_location'))
def test_from_command_line(self): orig_argv = sys.argv try: sys.argv = [ orig_argv[0], '--config_location=COMMANDLINE', '--overriden=WRONG', '--unknownBool', '--unknownInt', '123' ] builder = ConfigurationBindingsBuilder() builder.add_configs_for_class(ConfigurationBindingsTest) builder.set_override('overriden', 'OVERRIDEN') bindings = builder.build() self.assertEquals('OVERRIDEN', bindings.get('overriden')) self.assertEquals('COMMANDLINE', bindings.get('config_location')) self.assertEquals('True', bindings.get('unknownBool')) self.assertEquals('123', bindings.get('unknownInt')) self.assertIsNone(bindings.get('missing')) finally: sys.argv = orig_argv
def test_from_command_line(self): orig_argv = sys.argv try: sys.argv = [orig_argv[0], '--config_location=COMMANDLINE', '--overriden=WRONG', '--unknownBool', '--unknownInt', '123'] builder = ConfigurationBindingsBuilder() builder.add_configs_for_class(ConfigurationBindingsTest) builder.set_override('overriden', 'OVERRIDEN') bindings = builder.build() self.assertEquals('OVERRIDEN', bindings.get('overriden')) self.assertEquals('COMMANDLINE', bindings.get('config_location')) self.assertEquals('True', bindings.get('unknownBool')) self.assertEquals('123', bindings.get('unknownInt')) self.assertIsNone(bindings.get('missing')) finally: sys.argv = orig_argv
def test_contains(self): lazy_evaluator = TestLazyEvaluator() builder = ConfigurationBindingsBuilder() builder.add_lazy_initializer('lazy', lazy_evaluator) builder.add_lazy_initializer('shared', lazy_evaluator) builder.add_configs_for_class(ConfigurationBindingsTest) builder.set_override('shared', 'OverridenValue') builder.set_override('overriden', 'OverridenValue') builder.set_default('default', 'DefaultValue') bindings = builder.build() self.assertTrue('lazy' in bindings) self.assertTrue('shared' in bindings) self.assertTrue('overriden' in bindings) self.assertTrue('default' in bindings) self.assertTrue('DeFaUlT' in bindings) self.assertTrue('read_configuration_bindings_test' in bindings) self.assertTrue('tests_base_param' in bindings) self.assertFalse('missing' in bindings) self.assertEquals([], lazy_evaluator.called_with_bk) self.assertFalse('implied' in bindings)