Esempio n. 1
0
def test_get_groups_from_yaml_smoke():
    # Grapped from sample run
    groups_yaml = [
        {
            'Cheetah': {
                'metrics': [],
                'metric_expressions': ['^.*Cheetah.*$'],
            },
        },
        {
            'Python': {
                'metrics': [],
                'metric_expressions': ['^.*Python.*$'],
            },
        },
        {
            'CurseWords': {
                'metrics': [],
                'metric_expressions': ['^TotalCurseWords.*$'],
            },
        },
        {
            'LinesOfCode': {
                'metrics': [],
                'metric_expressions': ['^TotalLinesOfCode.*$'],
            },
        },
    ]

    groups = _get_groups_from_yaml(groups_yaml)
    assert (
        groups ==
        (
            # Regexes tested below
            Group('Cheetah', set(), (mock.ANY,)),
            Group('Python', set(), (mock.ANY,)),
            Group('CurseWords', set(), (mock.ANY,)),
            Group('LinesOfCode', set(), (mock.ANY,)),
        )
    )

    regexes = [group.metric_expressions[0].pattern for group in groups]
    assert (
        regexes ==
        [
            '^.*Cheetah.*$',
            '^.*Python.*$',
            '^TotalCurseWords.*$',
            '^TotalLinesOfCode.*$',
        ]
    )
def test_get_groups_from_yaml_smoke():
    # Grapped from sample run
    groups_yaml = [
        {'Cheetah': {
            'metrics': [],
            'metric_expressions': ['^.*Cheetah.*$'],
        }},
        {'Python': {
            'metrics': [],
            'metric_expressions': ['^.*Python.*$'],
        }},
        {'CurseWords': {
            'metrics': [],
            'metric_expressions': ['^TotalCurseWords.*$'],
        }},
        {'LinesOfCode': {
            'metrics': [],
            'metric_expressions': ['^TotalLinesOfCode.*$'],
        }}
    ]

    groups = _get_groups_from_yaml(groups_yaml)
    assert (
        groups ==
        (
            # Regexes tested below
            Group('Cheetah', set([]), (mock.ANY,)),
            Group('Python', set([]), (mock.ANY,)),
            Group('CurseWords', set([]), (mock.ANY,)),
            Group('LinesOfCode', set([]), (mock.ANY,)),
        )
    )

    regexes = [group.metric_expressions[0].pattern for group in groups]
    assert (
        regexes ==
        [
            '^.*Cheetah.*$',
            '^.*Python.*$',
            '^TotalCurseWords.*$',
            '^TotalLinesOfCode.*$',
        ]
    )
def test_get_groups_from_yaml_no_metrics_provided():
    groups_yaml = [{'G1': {'metric_expressions': ['^Foo.*$']}}]
    groups = _get_groups_from_yaml(groups_yaml)
    # Regex tested below
    assert groups == (Group('G1', set([]), (mock.ANY,)),)
    assert groups[0].metric_expressions[0].pattern == '^Foo.*$'
def test_get_groups_from_yaml_no_metric_expressions_provided():
    groups_yaml = [{'G1': {'metrics': ['Foo']}}]
    groups = _get_groups_from_yaml(groups_yaml)
    assert groups == (Group('G1', set(['Foo']), tuple()),)
def test_get_groups_from_yaml_no_metrics_provided():
    groups_yaml = [{'G1': {'metric_expressions': ['^Foo.*$']}}]
    groups = _get_groups_from_yaml(groups_yaml)
    # Regex tested below
    assert groups == (Group('G1', frozenset(), (mock.ANY, )), )
    assert groups[0].metric_expressions[0].pattern == '^Foo.*$'
def test_get_groups_from_yaml_no_metric_expressions_provided():
    groups_yaml = [{'G1': {'metrics': ['Foo']}}]
    groups = _get_groups_from_yaml(groups_yaml)
    assert groups == (Group('G1', frozenset(('Foo', )), ()), )