예제 #1
0
    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'])
예제 #2
0
    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)
예제 #3
0
    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'))
예제 #4
0
    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)
예제 #5
0
    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'])
예제 #6
0
    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'))
예제 #7
0
    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')
예제 #8
0
    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')
예제 #9
0
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)
예제 #10
0
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)
예제 #11
0
파일: runner.py 프로젝트: msabramo/logan
        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()