Ejemplo n.º 1
0
def build_manager():
    manager = soc.ConfigurationManager("prospector")

    manager.add(soc.BooleanSetting("zero_exit", default=False))

    manager.add(soc.BooleanSetting("autodetect", default=True))
    manager.add(soc.ListSetting("uses", soc.String, default=[]))

    manager.add(soc.BooleanSetting("blending", default=True))

    manager.add(soc.BooleanSetting("doc_warnings", default=None))
    manager.add(soc.BooleanSetting("test_warnings", default=None))
    manager.add(soc.BooleanSetting("no_style_warnings", default=None))
    manager.add(soc.BooleanSetting("member_warnings", default=None))
    manager.add(soc.BooleanSetting("full_pep8", default=None))
    manager.add(soc.IntegerSetting("max_line_length", default=None))

    manager.add(soc.BooleanSetting("messages_only", default=False))
    manager.add(soc.BooleanSetting("summary_only", default=False))
    manager.add(soc.BooleanSetting("quiet", default=False))
    manager.add(
        soc.ListSetting(
            "output_format",
            OutputChoice(sorted(FORMATTERS.keys())),
            default=None,
        ))
    manager.add(soc.BooleanSetting("absolute_paths", default=False))

    manager.add(
        soc.ListSetting(
            "tools",
            soc.Choice(sorted(TOOLS.keys())),
            default=None,
        ))
    manager.add(soc.ListSetting("with_tools", soc.String, default=[]))
    manager.add(soc.ListSetting("without_tools", soc.String, default=[]))
    manager.add(soc.ListSetting("profiles", soc.String, default=[]))
    manager.add(soc.ListSetting("profile_path", soc.String, default=[]))
    manager.add(
        soc.ChoiceSetting(
            "strictness",
            ["veryhigh", "high", "medium", "low", "verylow"],
            default=None,
        ))
    manager.add(soc.BooleanSetting("show_profile", default=False))

    manager.add(soc.BooleanSetting("no_external_config", default=False))
    manager.add(soc.BooleanSetting("legacy_tool_names", default=False))
    manager.add(soc.StringSetting("pylint_config_file", default=None))

    manager.add(soc.StringSetting("path", default=None))

    manager.add(soc.ListSetting("ignore_patterns", soc.String, default=[]))
    manager.add(soc.ListSetting("ignore_paths", soc.String, default=[]))

    manager.add(soc.BooleanSetting("die_on_tool_error", default=False))
    manager.add(soc.BooleanSetting("include_tool_stdout", default=False))
    manager.add(soc.BooleanSetting("direct_tool_stdout", default=False))

    return manager
Ejemplo n.º 2
0
def build_manager():
    manager = soc.ConfigurationManager('prospector')

    manager.add(soc.BooleanSetting('zero_exit', default=False))

    manager.add(soc.BooleanSetting('autodetect', default=True))
    manager.add(soc.ListSetting('uses', soc.String, default=[]))

    manager.add(soc.BooleanSetting('blending', default=True))

    manager.add(soc.BooleanSetting('doc_warnings', default=None))
    manager.add(soc.BooleanSetting('test_warnings', default=None))
    manager.add(soc.BooleanSetting('no_style_warnings', default=None))
    manager.add(soc.BooleanSetting('member_warnings', default=None))
    manager.add(soc.BooleanSetting('full_pep8', default=None))
    manager.add(soc.IntegerSetting('max_line_length', default=None))

    manager.add(soc.BooleanSetting('messages_only', default=False))
    manager.add(soc.BooleanSetting('summary_only', default=False))
    manager.add(soc.ListSetting(
        'output_format',
        OutputChoice(sorted(FORMATTERS.keys())),
        default=None,
    ))
    manager.add(soc.BooleanSetting('absolute_paths', default=False))

    manager.add(soc.ListSetting(
        'tools',
        soc.Choice(sorted(TOOLS.keys())),
        default=None,
    ))
    manager.add(soc.ListSetting('with_tools', soc.String, default=[]))
    manager.add(soc.ListSetting('without_tools', soc.String, default=[]))
    manager.add(soc.ListSetting('profiles', soc.String, default=[]))
    manager.add(soc.ListSetting('profile_path', soc.String, default=[]))
    manager.add(soc.ChoiceSetting(
        'strictness',
        ['veryhigh', 'high', 'medium', 'low', 'verylow'],
        default=None,
    ))
    manager.add(soc.BooleanSetting('show_profile', default=False))

    manager.add(soc.BooleanSetting('no_external_config', default=False))
    manager.add(soc.StringSetting('pylint_config_file', default=None))

    manager.add(soc.StringSetting('path', default=None))

    manager.add(soc.ListSetting('ignore_patterns', soc.String, default=[]))
    manager.add(soc.ListSetting('ignore_paths', soc.String, default=[]))

    manager.add(soc.BooleanSetting('die_on_tool_error', default=False))
    manager.add(soc.BooleanSetting('include_tool_stdout', default=False))
    manager.add(soc.BooleanSetting('direct_tool_stdout', default=False))

    # deprecated
    manager.add(soc.BooleanSetting('loquacious_pylint', default=False))

    return manager
Ejemplo n.º 3
0
def check_bad_name(name):
    try:
        setting = soc.StringSetting(name)
    except soc.NamingError:
        pass
    else:
        assert False, 'Invalid name allowed: %s' % name
Ejemplo n.º 4
0
def test_validation():
    settings1 = make_settings1()

    parent = soc.Configuration(settings1)
    parent.validate()

    child = soc.Configuration(make_settings2(), parent=parent)
    child.validate()

    setting = soc.StringSetting('happy', required=True)
    settings1.append(setting)
    parent = soc.Configuration(settings1)
    child = soc.Configuration(make_settings2(), parent=parent)
    try:
        parent.validate()
    except soc.MissingRequiredError:
        pass
    else:
        assert False, 'No MissingRequiredError for required setting'
    try:
        child.validate()
    except soc.MissingRequiredError:
        pass
    else:
        assert False, 'No MissingRequiredError for required setting'

    setting.value = 'sad'
    parent.validate()
    child.validate()
Ejemplo n.º 5
0
def make_settings2():
    settings = []
    setting = soc.StringSetting('foo')
    setting.value = 'goodbye'
    settings.append(setting)
    setting = soc.IntegerSetting('bar')
    settings.append(setting)
    return settings
Ejemplo n.º 6
0
def make_settings1():
    settings = []
    setting = soc.StringSetting('foo')
    setting.value = 'hello'
    settings.append(setting)
    setting = soc.IntegerSetting('bar')
    setting.value = 123
    settings.append(setting)
    setting = soc.BooleanSetting('baz', default=False)
    settings.append(setting)
    return settings
Ejemplo n.º 7
0
def make_settings():
    settings = []
    setting = soc.StringSetting('foo')
    settings.append(setting)
    setting = soc.IntegerSetting('bar')
    settings.append(setting)
    setting = soc.BooleanSetting('baz', default=False)
    settings.append(setting)
    setting = soc.ListSetting('happy', soc.String)
    settings.append(setting)
    return settings
Ejemplo n.º 8
0
def build_manager():
    manager = soc.ConfigurationManager('prospector')

    manager.add(soc.BooleanSetting('autodetect', default=True))
    manager.add(soc.ListSetting('uses', soc.String, default=[]))

    manager.add(soc.BooleanSetting('blending', default=True))
    manager.add(soc.BooleanSetting('common_plugin', default=True))

    manager.add(soc.BooleanSetting('doc_warnings', default=False))
    manager.add(soc.BooleanSetting('test_warnings', default=False))
    manager.add(soc.BooleanSetting('style_warnings', default=True))
    manager.add(soc.BooleanSetting('full_pep8', default=False))
    manager.add(soc.IntegerSetting('max_line_length', default=None))

    manager.add(soc.BooleanSetting('messages_only', default=False))
    manager.add(soc.BooleanSetting('summary_only', default=False))
    manager.add(
        soc.ChoiceSetting(
            'output_format',
            sorted(FORMATTERS.keys()),
            default='text',
        ))
    manager.add(soc.BooleanSetting('absolute_paths', default=False))

    manager.add(
        soc.ListSetting(
            'tools',
            soc.Choice(sorted(TOOLS.keys())),
            default=sorted(DEFAULT_TOOLS),
        ))
    manager.add(soc.ListSetting('profiles', soc.String, default=[]))
    manager.add(
        soc.ChoiceSetting(
            'strictness',
            ['veryhigh', 'high', 'medium', 'low', 'verylow'],
            default='medium',
        ))
    manager.add(
        soc.ChoiceSetting(
            'external_config',
            ['none', 'merge', 'only'],
            default='only',
        ))

    manager.add(soc.StringSetting('path', default=None))

    manager.add(soc.ListSetting('ignore_patterns', soc.String, default=[]))
    manager.add(soc.ListSetting('ignore_paths', soc.String, default=[]))

    manager.add(soc.BooleanSetting('die_on_tool_error', default=False))

    return manager
Ejemplo n.º 9
0
def check_good_name(name):
    setting = soc.StringSetting(name)
Ejemplo n.º 10
0
def make_settings3():
    settings = []
    setting = soc.StringSetting('foo')
    setting.value = 'happy'
    settings.append(setting)
    return settings
Ejemplo n.º 11
0
import os

import setoptconf as soc


class Blah(object):
    foo = 'a'


os.environ['TESTME_BAR'] = '123'

mgr = soc.ConfigurationManager('testme')
mgr.add(soc.StringSetting('foo'))
mgr.add(soc.IntegerSetting('bar', required=True))
mgr.add(soc.BooleanSetting('baz', default=True))

config = mgr.retrieve(
    soc.EnvironmentVariableSource,
    soc.ObjectSource(Blah),
    soc.MappingSource({'baz': False}),
)

assert config.foo == 'a'
assert config.bar == 123
assert config.baz is False

try:
    mgr.add('blah')
except TypeError:
    pass
else: