Example #1
0
def test_collect_configuration_run_summary_logs_critical_for_parse_error():
    flexmock(module.validate).should_receive('parse_configuration').and_raise(ValueError)
    args = flexmock(extract=False, list=False)

    logs = tuple(module.collect_configuration_run_summary_logs(('test.yaml',), args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #2
0
def test_collect_configuration_run_summary_logs_critical_for_missing_configs():
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {'global': flexmock(config_paths=[])}

    logs = tuple(
        module.collect_configuration_run_summary_logs({}, arguments=arguments))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #3
0
def test_collect_configuration_run_summary_logs_info_for_success_with_list():
    flexmock(module.validate).should_receive('parse_configuration').and_return({'test.yaml': {}})
    flexmock(module).should_receive('run_configuration').and_return([])
    args = flexmock(extract=False, list=True, repository='repo', archive=None)

    logs = tuple(module.collect_configuration_run_summary_logs(('test.yaml',), args=args))

    assert all(log for log in logs if log.levelno == module.logging.INFO)
Example #4
0
def test_collect_configuration_run_summary_logs_missing_configs_error():
    arguments = {'global': flexmock(config_paths=[])}
    expected_logs = (flexmock(),)
    flexmock(module).should_receive('make_error_log_records').and_return(expected_logs)

    logs = tuple(module.collect_configuration_run_summary_logs({}, arguments=arguments))

    assert logs == expected_logs
Example #5
0
def test_collect_configuration_run_summary_logs_critical_for_missing_configs():
    flexmock(module.validate).should_receive('parse_configuration').and_return({'test.yaml': {}})
    flexmock(module).should_receive('run_configuration').and_return([])
    args = flexmock(config_paths=(), extract=False, list=False)

    logs = tuple(module.collect_configuration_run_summary_logs(config_filenames=(), args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #6
0
def test_collect_configuration_run_summary_logs_info_for_success():
    flexmock(module).should_receive('run_configuration')

    logs = tuple(
        module.collect_configuration_run_summary_logs(('test.yaml', ),
                                                      args=()))

    assert any(log for log in logs if log.levelno == module.logging.INFO)
Example #7
0
def test_collect_configuration_run_summary_logs_critical_for_error():
    flexmock(module).should_receive('run_configuration').and_raise(ValueError)

    logs = tuple(
        module.collect_configuration_run_summary_logs(('test.yaml', ),
                                                      args=()))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #8
0
def test_collect_configuration_run_summary_executes_hooks_for_create():
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {'create': flexmock(), 'global': flexmock(dry_run=False)}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert {log.levelno for log in logs} == {logging.INFO}
Example #9
0
def test_collect_configuration_run_summary_logs_info_for_success():
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert all(log for log in logs if log.levelno == module.logging.INFO)
Example #10
0
def test_collect_configuration_run_summary_logs_info_for_success_with_list():
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {'list': flexmock(repository='repo', archive=None)}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert {log.levelno for log in logs} == {logging.INFO}
Example #11
0
def test_collect_configuration_run_summary_logs_info_for_success_with_mount():
    flexmock(module.validate).should_receive('guard_configuration_contains_repository')
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {'mount': flexmock(repository='repo')}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}}, arguments=arguments)
    )

    assert {log.levelno for log in logs} == {logging.INFO}
Example #12
0
def test_collect_configuration_run_summary_logs_info_for_success():
    flexmock(module.command).should_receive('execute_hook').never()
    flexmock(module).should_receive('run_configuration').and_return([])
    arguments = {}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert {log.levelno for log in logs} == {logging.INFO}
Example #13
0
def test_collect_configuration_run_summary_logs_critical_for_parse_error():
    flexmock(module.validate).should_receive('parse_configuration').and_raise(
        ValueError)
    args = flexmock(extract=False, list=False)

    logs = tuple(
        module.collect_configuration_run_summary_logs(('test.yaml', ),
                                                      args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #14
0
def test_collect_configuration_run_summary_logs_critical_for_list_with_archive_and_repository_error():
    flexmock(module.validate).should_receive('parse_configuration').and_return({'test.yaml': {}})
    flexmock(module.validate).should_receive('guard_configuration_contains_repository').and_raise(
        ValueError
    )
    args = flexmock(extract=False, list=True, repository='repo', archive='test')

    logs = tuple(module.collect_configuration_run_summary_logs(('test.yaml',), args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #15
0
def test_collect_configuration_run_summary_logs_info_for_success_with_list():
    flexmock(module.validate).should_receive('parse_configuration').and_return(
        {'test.yaml': {}})
    flexmock(module).should_receive('run_configuration')
    args = flexmock(extract=False, list=True, repository='repo', archive=None)

    logs = tuple(
        module.collect_configuration_run_summary_logs(('test.yaml', ),
                                                      args=args))

    assert all(log for log in logs if log.levelno == module.logging.INFO)
Example #16
0
def test_collect_configuration_run_summary_logs_critical_for_missing_configs():
    flexmock(module.validate).should_receive('parse_configuration').and_return(
        {'test.yaml': {}})
    flexmock(module).should_receive('run_configuration')
    args = flexmock(config_paths=(), extract=False, list=False)

    logs = tuple(
        module.collect_configuration_run_summary_logs(config_filenames=(),
                                                      args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #17
0
def test_collect_configuration_run_summary_logs_pre_hook_error():
    flexmock(module.command).should_receive('execute_hook').and_raise(ValueError)
    expected_logs = (flexmock(),)
    flexmock(module).should_receive('make_error_log_records').and_return(expected_logs)
    arguments = {'create': flexmock(), 'global': flexmock(monitoring_verbosity=1, dry_run=False)}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}}, arguments=arguments)
    )

    assert logs == expected_logs
Example #18
0
def test_collect_configuration_run_summary_logs_outputs_merged_json_results():
    flexmock(module.validate).should_receive('parse_configuration').and_return(
        {'test.yaml': {}, 'test2.yaml': {}}
    )
    flexmock(module).should_receive('run_configuration').and_return(['foo', 'bar']).and_return(
        ['baz']
    )
    flexmock(module.sys.stdout).should_receive('write').with_args('["foo", "bar", "baz"]').once()
    args = flexmock(extract=False, list=False)

    tuple(module.collect_configuration_run_summary_logs(('test.yaml', 'test2.yaml'), args=args))
Example #19
0
def test_collect_configuration_run_summary_logs_critical_for_run_value_error():
    flexmock(module.validate).should_receive(
        'guard_configuration_contains_repository')
    flexmock(module).should_receive('run_configuration').and_raise(ValueError)
    arguments = {}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #20
0
def test_collect_configuration_run_summary_logs_outputs_merged_json_results():
    flexmock(module).should_receive('run_configuration').and_return(['foo', 'bar']).and_return(
        ['baz']
    )
    flexmock(module.sys.stdout).should_receive('write').with_args('["foo", "bar", "baz"]').once()
    arguments = {}

    tuple(
        module.collect_configuration_run_summary_logs(
            {'test.yaml': {}, 'test2.yaml': {}}, arguments=arguments
        )
    )
Example #21
0
def test_collect_configuration_run_summary_logs_mount_with_repository_error():
    flexmock(module.validate).should_receive(
        'guard_configuration_contains_repository').and_raise(ValueError)
    expected_logs = (flexmock(), )
    flexmock(module).should_receive('make_error_log_records').and_return(
        expected_logs)
    arguments = {'mount': flexmock(repository='repo')}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert logs == expected_logs
Example #22
0
def test_collect_configuration_run_summary_logs_critical_for_extract_with_repository_error(
):
    flexmock(module.validate).should_receive('parse_configuration').and_return(
        {'test.yaml': {}})
    flexmock(module.validate).should_receive(
        'guard_configuration_contains_repository').and_raise(ValueError)
    args = flexmock(extract=True, list=False, repository='repo')

    logs = tuple(
        module.collect_configuration_run_summary_logs(('test.yaml', ),
                                                      args=args))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
Example #23
0
def test_collect_configuration_run_summary_logs_run_configuration_error():
    flexmock(module.validate).should_receive('guard_configuration_contains_repository')
    flexmock(module).should_receive('run_configuration').and_return(
        [logging.makeLogRecord(dict(levelno=logging.CRITICAL, levelname='CRITICAL', msg='Error'))]
    )
    flexmock(module).should_receive('make_error_log_records').and_return([])
    arguments = {}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}}, arguments=arguments)
    )

    assert {log.levelno for log in logs} == {logging.CRITICAL}
Example #24
0
def test_collect_configuration_run_summary_logs_post_hook_error():
    flexmock(module.command).should_receive('execute_hook').and_return(
        None).and_raise(ValueError)
    flexmock(module).should_receive('run_configuration').and_return([])
    expected_logs = (flexmock(), )
    flexmock(module).should_receive('make_error_log_records').and_return(
        expected_logs)
    arguments = {'create': flexmock(), 'global': flexmock(dry_run=False)}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert expected_logs[0] in logs
Example #25
0
def test_collect_configuration_run_summary_logs_critical_including_output_for_run_process_error(
):
    flexmock(module.validate).should_receive(
        'guard_configuration_contains_repository')
    flexmock(module).should_receive('run_configuration').and_raise(
        subprocess.CalledProcessError(1, 'command', 'error output'))
    arguments = {}

    logs = tuple(
        module.collect_configuration_run_summary_logs({'test.yaml': {}},
                                                      arguments=arguments))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)
    assert any(log for log in logs if 'error output' in str(log))
Example #26
0
def test_collect_configuration_run_summary_logs_critical_for_missing_configs():
    logs = tuple(
        module.collect_configuration_run_summary_logs(
            config_filenames=(), args=flexmock(config_paths=())))

    assert any(log for log in logs if log.levelno == module.logging.CRITICAL)