Example #1
0
def test_check_single_interface_group(value_store, item, params, result):
    group_members: interfaces.GroupMembers = {
        None: [
            {
                'name': 'vboxnet0',
                'state_name': 'up'
            },
            {
                'name': 'wlp2s0',
                'state_name': 'up'
            },
        ]
    }
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0)[int(item) - 1],
                group_members=group_members,
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(4000000)[int(item) - 1],
            group_members=group_members,
            timestamp=5,
        )) == _add_group_info_to_results(
            result, 'Members: [vboxnet0 (up), wlp2s0 (up)]')
Example #2
0
def test_check_single_interface(value_store, item, params, result):
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0)[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(4000000)[int(item) - 1],
            timestamp=5,
        )) == result
Example #3
0
def test_check_single_interface_w_node(value_store, item, params, result):
    node_name = 'node'
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0, node=node_name)[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(4000000, node=node_name)[int(item) - 1],
            timestamp=5,
        )) == _add_node_name_to_results(result, node_name)
Example #4
0
def test_check_single_interface_input_is_rate(value_store, item, params, result):
    # check that this does not raise an IgnoreResultsError, since no rates are computed
    list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(0)[int(item) - 1],
            input_is_rate=True,
        ))
Example #5
0
def test_check_single_interface_averaging(value_store, item, params, result):
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0)[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            type_defs.Parameters({
                **params,
                'average': 5,
            }),
            _create_interfaces(4000000)[int(item) - 1],
            timestamp=5,
        )) == result
Example #6
0
def test_check_single_interface_same_index_descr_alias(value_store):
    item = '07'
    result = next(  # type: ignore[call-overload]
        interfaces.check_single_interface(
            item,
            type_defs.Parameters({}),
            _create_interfaces(0, index=item, descr=item, alias=item)[0],
        ))
    assert result == Result(
        state=state.OK,
        notice='Operational state: up',
    )
Example #7
0
def test_check_single_interface_ignore_state(value_store, item, params, result):
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                type_defs.Parameters({
                    **params,
                    'state': None,
                }),
                _create_interfaces(0, oper_status=4)[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            type_defs.Parameters({
                **params,
                'state': None,
            }),
            _create_interfaces(4000000, oper_status=4)[int(item) - 1],
            timestamp=5,
        )) == result
Example #8
0
def test_check_single_interface_admin_status(value_store, item, params, result):
    params = type_defs.Parameters({
        **params,
        'discovered_admin_status': '1',
    })
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0, admin_status='1')[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(4000000, admin_status='1')[int(item) - 1],
            timestamp=5,
        )) == result[:2] + [
            Result(state=state.OK, notice='Admin state: up'),
        ] + result[2:]
Example #9
0
def test_check_single_interface_group_admin_status(value_store, item, params, result):
    group_members: interfaces.GroupMembers = {
        None: [
            {
                'name': 'vboxnet0',
                'oper_status_name': 'up',
                'admin_status_name': 'down'
            },
            {
                'name': 'wlp2s0',
                'oper_status_name': 'up',
                'admin_status_name': 'testing'
            },
        ]
    }
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                params,
                _create_interfaces(0)[int(item) - 1],
                group_members=group_members,
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            params,
            _create_interfaces(4000000)[int(item) - 1],
            group_members=group_members,
            timestamp=5,
        )) == _add_group_info_to_results(
            result,
            'Members: [vboxnet0 (op. state: up, admin state: down), wlp2s0 (op. state: up, '
            'admin state: testing)]',
        )
Example #10
0
def test_check_single_interface_legacy_parameters_2(value_store, item, params, result):
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                type_defs.Parameters({
                    **params,
                    'map_operstates': [(['5', '9'], 3)],
                }),
                _create_interfaces(0, admin_status='2')[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            type_defs.Parameters({
                **params,
                'map_operstates': [(['5', '9'], 3)],
            }),
            _create_interfaces(4000000, admin_status='2')[int(item) - 1],
            timestamp=5,
        )) == result[:2] + [
            Result(state=state.UNKNOWN, notice='Admin state: down'),
        ] + result[2:]
Example #11
0
def test_check_single_interface_legacy_parameters_1(value_store, item, params, result):
    with pytest.raises(IgnoreResultsError):
        list(
            interfaces.check_single_interface(
                item,
                type_defs.Parameters({
                    **params,
                    'state': ['9'],
                }),
                _create_interfaces(0, admin_status='1')[int(item) - 1],
                timestamp=0,
            ))
    assert list(
        interfaces.check_single_interface(
            item,
            type_defs.Parameters({
                **params,
                'state': ['9'],
            }),
            _create_interfaces(4000000, admin_status='1')[int(item) - 1],
            timestamp=5,
        )) == result[:2] + [
            Result(state=state.CRIT, notice='Admin state: up'),
        ] + result[2:]