def test_extra_settings_work_on_mixed_iterables(self): class NewSettings(object): EXTRA_FOO = ('lulz',) settings = mock.Mock() settings.FOO = ['foo', 'bar'] new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertEquals(getattr(settings, 'FOO', None), ['foo', 'bar', 'lulz'])
def test_extra_settings_dont_get_set(self): class NewSettings(object): EXTRA_FOO = ('lulz', ) settings = mock.Mock() settings.FOO = ('foo', 'bar') new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertFalse(settings.EXTRA_FOO.called)
def test_extra_settings_work_on_tuple(self): class NewSettings(object): EXTRA_FOO = ('lulz',) settings = mock.Mock() settings.FOO = ('foo', 'bar') new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertEquals(getattr(settings, 'FOO', None), ('foo', 'bar', 'lulz'))
def test_extra_settings_dont_get_set(self): class NewSettings(object): EXTRA_FOO = ('lulz',) settings = mock.Mock() settings.FOO = ('foo', 'bar') new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertFalse(settings.EXTRA_FOO.called)
def test_extra_settings_work_on_mixed_iterables(self): class NewSettings(object): EXTRA_FOO = ('lulz', ) settings = mock.Mock() settings.FOO = ['foo', 'bar'] new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertEquals(getattr(settings, 'FOO', None), ['foo', 'bar', 'lulz'])
def test_extra_settings_work_on_tuple(self): class NewSettings(object): EXTRA_FOO = ('lulz', ) settings = mock.Mock() settings.FOO = ('foo', 'bar') new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertEquals(getattr(settings, 'FOO', None), ('foo', 'bar', 'lulz'))
def test_does_add_settings(self): class NewSettings(object): FOO = 'bar' BAR = 'baz' settings = mock.Mock() new_settings = NewSettings() add_settings(new_settings, settings=settings) self.assertEquals(getattr(settings, 'FOO', None), 'bar') self.assertEquals(getattr(settings, 'BAR', None), 'baz')
def load_settings(mod_or_filename, silent=False, allow_extras=True, settings=django_settings): if isinstance(mod_or_filename, basestring): conf = create_module('temp_config', install=False) conf.__file__ = mod_or_filename try: execfile(mod_or_filename, conf.__dict__) except IOError as e: if silent and e.errno in (errno.ENOENT, errno.EISDIR): return settings e.strerror = 'Unable to load configuration file (%s)' % e.strerror raise else: conf = mod_or_filename add_settings(conf, allow_extras=allow_extras, settings=settings)
return parser.add_option("--config", metavar="CONFIG", default=default_config_path) (options, logan_args) = parser.parse_args(args) config_path = options.config if not os.path.exists(config_path): raise ValueError("Configuration file does not exist. Use '%s init' to initialize the file." % runner_name) if default_settings: settings_mod = import_module(default_settings) # TODO: logan should create a proxy module for its settings management.setup_environ(settings_mod) add_settings(settings_mod) load_settings(config_path) if initializer is not None: initializer({"project": project, "config_path": config_path}) management.execute_from_command_line([runner_name, command] + command_args) sys.exit(0) if __name__ == "__main__": run_app()