예제 #1
0
def test_load_from_non_utf8_file_raises_ConfigError(tmpdir):
    config_path = tmpdir / 'config.conf'
    config = {'key': 'value'}
    with config_path.open(mode='wb') as handle:
        handle.write(serialize_config(config).encode('utf-16'))
    with pytest.raises(ConfigError):
        load_config(str(config_path))
예제 #2
0
def test_load_from_valid_config_file(tmpdir):
    config_path = tmpdir / 'config.conf'
    config = ConfigDict()
    config['key'] = 'value'
    with config_path.open(mode='wt', encoding='utf-8') as handle:
        handle.write(serialize_config(config))
    assert load_config(str(config_path))['key'] == 'value'
예제 #3
0
파일: cli.py 프로젝트: willfrey/cosmic-ray
def new_config(config_file):
    """Create a new config file.
    """
    cfg = cosmic_ray.commands.new_config()
    config_str = serialize_config(cfg)
    config_file.write(config_str)
    sys.exit(ExitCode.OK)
예제 #4
0
파일: cli.py 프로젝트: willfrey/cosmic-ray
def config(session_file):
    """Show the configuration for a session."""
    with use_db(session_file) as database:
        cfg = database.get_config()
        print(serialize_config(cfg))

    sys.exit(ExitCode.OK)
예제 #5
0
def test_load_valid_stdin(mocker):
    temp_stdin = io.StringIO()
    temp_stdin.name = 'stringio'
    config = ConfigDict()
    config['key'] = 'value'
    temp_stdin.write(serialize_config(config))
    temp_stdin.seek(0)
    mocker.patch('sys.stdin', temp_stdin)
    assert load_config()['key'] == 'value'
예제 #6
0
def handle_new_config(args):
    """usage: cosmic-ray new-config <config-file>

    Create a new config file.
    """
    config = cosmic_ray.commands.new_config()
    config_str = serialize_config(config)
    with open(args['<config-file>'], mode='wt') as handle:
        handle.write(config_str)

    return ExitCode.OK
예제 #7
0
def handle_config(args):
    """usage: cosmic-ray config <session-file>

    Show the configuration for in a session.
    """
    session_file = get_db_name(args['<session-file>'])
    with use_db(session_file) as database:
        config = database.get_config()
        print(serialize_config(config))

    return ExitCode.OK
예제 #8
0
파일: cli.py 프로젝트: sjachim/cosmic-ray
def handle_new_config(args):
    """usage: cosmic-ray new-config <config-file>

    Create a new config file.
    """
    config = cosmic_ray.commands.new_config()
    config_str = serialize_config(config)
    with open(args['<config-file>'], mode='wt') as handle:
        handle.write(config_str)

    return ExitCode.OK
예제 #9
0
파일: cli.py 프로젝트: sjachim/cosmic-ray
def handle_config(args):
    """usage: cosmic-ray config <session-file>

    Show the configuration for in a session.
    """
    session_file = get_db_name(args['<session-file>'])
    with use_db(session_file) as database:
        config = database.get_config()
        print(serialize_config(config))

    return ExitCode.OK