Exemplo n.º 1
0
def test_winperf_if_parse_sections():
    winperf_if.parse_winperf_if(IF_SECTION + [
        [u'Node', u'MACAddress', u'Name', u'NetConnectionID', u'NetConnectionStatus'],
        [u'NODE1', u'', u'WAN Miniport (L2TP)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (SSTP)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (IKEv2)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (PPTP)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (PPPOE)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (IP)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (IPv6)', u'', u''],
        [u'NODE1', u'', u'WAN Miniport (Network Monitor)', u'', u''],
        [u'NODE1', u'', u'Hyper-V Virtual Ethernet Adapter', u'', u''],
        [u'NODE1', u'', u'Microsoft Kernel Debug Network Adapter', u'', u''],
        [u'NODE1', u'', u'RAS Async Adapter', u'', u''],
        [u'NODE1', u'', u'Broadcom NetXtreme Gigabit Ethernet', u'SLOT 3 Port 1', u'4'],
        [u'NODE1', u'', u'Broadcom NetXtreme Gigabit Ethernet', u'SLOT 3 Port 2', u'4'],
        [
            u'NODE1', u'AA:AA:AA:AA:AA:AA',
            u'Broadcom BCM57800 NetXtreme II 10 GigE (NDIS VBD Client)', u'NIC2', u'2'
        ],
        [u'NODE1', u'', u'Broadcom NetXtreme Gigabit Ethernet', u'SLOT 3 Port 4', u'4'],
        [u'NODE1', u'', u'Broadcom NetXtreme Gigabit Ethernet', u'SLOT 3 Port 3', u'4'],
        [u'NODE1', u'', u'Broadcom BCM57800 NetXtreme II 1 GigE (NDIS VBD Client)', u'NIC4', u'4'],
        [u'NODE1', u'', u'Broadcom BCM57800 NetXtreme II 1 GigE (NDIS VBD Client)', u'NIC3', u'4'],
        [
            u'NODE1', u'AA:AA:AA:AA:AA:AA',
            u'Broadcom BCM57800 NetXtreme II 10 GigE (NDIS VBD Client)', u'NIC1', u'2'
        ],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter', u'', u''],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter #2', u'', u''],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter #3', u'', u''],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter #4', u'', u''],
        [u'NODE1', u'', u'Microsoft Network Adapter Multiplexor Default Miniport', u'', u''],
        [
            u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Microsoft Network Adapter Multiplexor Driver',
            u'10GTeam', u'2'
        ],
        [u'NODE1', u'', u'Hyper-V Virtual Switch Extension Adapter', u'', u''],
        [
            u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Hyper-V Virtual Ethernet Adapter #2', u'Management',
            u'2'
        ],
        [u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Hyper-V Virtual Ethernet Adapter #3', u'CSV', u'2'],
        [u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Hyper-V Virtual Ethernet Adapter #4', u'Live', u'2'],
        [u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Hyper-V Virtual Ethernet Adapter #5', u'iSCSI1', u'2'],
        [u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Hyper-V Virtual Ethernet Adapter #6', u'iSCSI2', u'2'],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter #5', u'', u''],
        [u'NODE1', u'AA:AA:AA:AA:AA:AA', u'Microsoft Failover Cluster Virtual Adapter', u'', u''],
        [u'NODE1', u'', u'Microsoft ISATAP Adapter #6', u'', u''],
    ])
Exemplo n.º 2
0
def test_winperf_if_netconnection_id(string_table, settings, items):
    assert [
        service.item for service in winperf_if.discover_winperf_if(
            [{
                **interfaces.DISCOVERY_DEFAULT_PARAMETERS,
                **settings,
            }],
            winperf_if.parse_winperf_if(string_table),
        ) if isinstance(service, Service)
    ] == items
Exemplo n.º 3
0
def test_winperf_if_regression(
    monkeypatch,
    string_table,
    discovery_results,
    items_params_results,
):
    section = winperf_if.parse_winperf_if(string_table)
    assert list(winperf_if.discover_winperf_if(
        [interfaces.DISCOVERY_DEFAULT_PARAMETERS],
        section,
    )) == discovery_results

    monkeypatch.setattr(interfaces, 'get_value_store', lambda: {})
    for item, par, res in items_params_results:
        assert list(winperf_if.check_winperf_if(
            item,
            par,
            section,
        )) == res
Exemplo n.º 4
0
def test_winperf_if_group_patterns(value_store):
    expected_services = [
        Service(item='Broadcom ABC123 NetXtreme 123 GigE [Client1] 138',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1410065408
                }),
        Service(item='Broadcom ABC456 NetXtreme 456 GigE [Client2] 137',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1410065408
                }),
        Service(
            item='Broadcom',
            parameters={
                'aggregate': {
                    'member_appearance': 'descr',
                    'inclusion_condition': {
                        'match_desc': [
                            'Broadcom ABC123 NetXtreme 123 GigE \\[Client1\\] 138',
                            'Broadcom ABC456 NetXtreme 456 GigE \\[Client2\\] 137'
                        ]
                    },
                    'exclusion_conditions': []
                },
                'discovered_oper_status': ['1'],
                'discovered_speed': 2820130816.0
            }),
        Service(
            item='isatap',
            parameters={
                'aggregate': {
                    'member_appearance': 'descr',
                    'inclusion_condition': {
                        'match_desc': [
                            'isatap.{A1A1A1A1-A1A1-A1A1-A1A1-A1A1A1A1A1A1}',
                            'isatap.{B1B1B1B1-B1B1-B1B1-B1B1-B1B1B1B1B1B1}',
                            'isatap.{C1C1C1C1-C1C1-C1C1-C1C1-C1C1C1C1C1C1}',
                            'isatap.{D1D1D1D1-D1D1-D1D1-D1D1-D1D1D1D1D1D1}',
                            'isatap.{E1E1E1E1-E1E1-E1E1-E1E1-E1E1E1E1E1E1}',
                            'isatap.{F1F1F1F1-F1F1-F1F1-F1F1-F1F1F1F1F1F1}'
                        ]
                    },
                    'exclusion_conditions': []
                },
                'discovered_oper_status': ['1'],
                'discovered_speed': 600000.0
            }),
    ]
    section = winperf_if.parse_winperf_if(IF_SECTION)
    assert list(
        winperf_if.discover_winperf_if(
            [
                type_defs.Parameters({
                    'discovery_single': (
                        False,
                        {},
                    ),
                    'grouping': (
                        True,
                        {
                            'group_items': [
                                {
                                    'group_name': 'isatap',
                                    'member_appearance': 'descr',
                                },
                            ],
                        },
                    ),
                    'matching_conditions': (
                        False,
                        {
                            'match_desc': [
                                'isatap.{A1A1A1A1-A1A1-A1A1-A1A1-A1A1A1A1A1A1}',
                                'isatap.{B1B1B1B1-B1B1-B1B1-B1B1-B1B1B1B1B1B1}',
                                'isatap.{C1C1C1C1-C1C1-C1C1-C1C1-C1C1C1C1C1C1}',
                                'isatap.{D1D1D1D1-D1D1-D1D1-D1D1-D1D1D1D1D1D1}',
                                'isatap.{E1E1E1E1-E1E1-E1E1-E1E1-E1E1E1E1E1E1}',
                                'isatap.{F1F1F1F1-F1F1-F1F1-F1F1-F1F1F1F1F1F1}',
                            ],
                        },
                    ),
                }),
                type_defs.Parameters({
                    'grouping': (
                        True,
                        {
                            'group_items': [
                                {
                                    'group_name': 'Broadcom',
                                    'member_appearance': 'descr',
                                },
                            ],
                        },
                    ),
                    'matching_conditions': (
                        False,
                        {
                            'match_desc': [
                                'Broadcom ABC123 NetXtreme 123 GigE \\[Client1\\] 138',
                                'Broadcom ABC456 NetXtreme 456 GigE \\[Client2\\] 137',
                            ],
                        },
                    ),
                }),
                type_defs.Parameters({
                    **interfaces.DISCOVERY_DEFAULT_PARAMETERS,
                    'discovery_single': (
                        True,
                        {
                            'item_appearance': 'descr',
                            'pad_portnumbers': True,
                        },
                    ),
                }),
            ],
            section,
        )) == expected_services

    assert [
        result for service in expected_services
        for result in winperf_if.check_winperf_if(
            service.item or "",  # or "" to make mypy happy
            type_defs.Parameters(service.parameters),
            section,
        ) if not isinstance(result, IgnoreResults)
    ] == [
        Result(state=state.OK, notice='[1]'),
        Result(state=state.OK, notice='Operational state: Connected'),
        Result(state=state.OK, summary='Speed: 1.41 GBit/s'),
        Result(state=state.OK, notice='[2]'),
        Result(state=state.OK, notice='Operational state: Connected'),
        Result(state=state.OK, summary='Speed: 1.41 GBit/s'),
        Result(state=state.OK, notice='Teaming'),
        Result(state=state.OK, notice='Operational state: up'),
        Result(
            state=state.OK,
            notice=
            'Members: [Broadcom ABC123 NetXtreme 123 GigE [Client1] 138 (Connected), Broadcom ABC456 NetXtreme 456 GigE [Client2] 137 (Connected)]',
        ),
        Result(state=state.OK, summary='Speed: 2.82 GBit/s'),
        Result(state=state.OK, notice='Teaming'),
        Result(state=state.OK, notice='Operational state: up'),
        Result(
            state=state.OK,
            notice=
            'Members: [isatap.{A1A1A1A1-A1A1-A1A1-A1A1-A1A1A1A1A1A1} (Connected), isatap.{B1B1B1B1-B1B1-B1B1-B1B1-B1B1B1B1B1B1} (Connected), isatap.{C1C1C1C1-C1C1-C1C1-C1C1-C1C1C1C1C1C1} (Connected), isatap.{D1D1D1D1-D1D1-D1D1-D1D1-D1D1D1D1D1D1} (Connected), isatap.{E1E1E1E1-E1E1-E1E1-E1E1-E1E1E1E1E1E1} (Connected), isatap.{F1F1F1F1-F1F1-F1F1-F1F1-F1F1F1F1F1F1} (Connected)]',
        ),
        Result(state=state.OK, summary='Speed: 600 kBit/s'),
    ]
Exemplo n.º 5
0
def test_winperf_if_inventory_teaming():
    assert list(
        winperf_if.discover_winperf_if(
            [
                type_defs.Parameters({
                    **interfaces.DISCOVERY_DEFAULT_PARAMETERS,
                    'discovery_single': (
                        True,
                        {
                            'item_appearance': 'descr',
                            'pad_portnumbers': True,
                        },
                    ),
                })
            ],
            winperf_if.parse_winperf_if([
                [u'1542018413.59', u'510', u'2341040'],
                [
                    u'4',
                    u'instances:',
                    u'HPE_Ethernet_1Gb_4-port_331i_Adapter__3',
                    u'HPE_Ethernet_1Gb_4-port_331i_Adapter__4',
                    u'HPE_Ethernet_1Gb_4-port_331i_Adapter',
                    u'HPE_Ethernet_1Gb_4-port_331i_Adapter__2',
                ],
                [
                    u'-122', u'201612106', u'187232778', u'200985680546908',
                    u'969308895925', u'bulk_count'
                ],
                [
                    u'-110', u'2938459', u'2713782', u'141023109713',
                    u'7143818358', u'bulk_count'
                ],
                [
                    u'-244', u'2920458', u'2695781', u'133889346630',
                    u'9159143', u'bulk_count'
                ],
                [
                    u'-58', u'18001', u'18001', u'7133763083', u'7134659215',
                    u'bulk_count'
                ],
                [
                    u'10', u'1000000000', u'1000000000', u'1000000000',
                    u'1000000000', u'large_rawcount'
                ],
                [
                    u'-246', u'189182492', u'174803164', u'200050287945665',
                    u'730174911', u'bulk_count'
                ],
                [u'14', u'0', u'0', u'133879714188', u'131929', u'bulk_count'],
                [
                    u'16', u'2920458', u'2695781', u'8946694', u'9027210',
                    u'bulk_count'
                ],
                [u'18', u'0', u'0', u'685748', u'4', u'large_rawcount'],
                [u'20', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'22', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [
                    u'-4', u'12429614', u'12429614', u'935392601243',
                    u'968578721014', u'bulk_count'
                ],
                [
                    u'26', u'0', u'0', u'7133594582', u'7134655376',
                    u'bulk_count'
                ],
                [u'28', u'18001', u'18001', u'168501', u'3839', u'bulk_count'],
                [u'30', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'32', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'34', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'1086', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'1088', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'1090', u'0', u'0', u'0', u'0', u'bulk_count'],
                [u'1092', u'0', u'0', u'0', u'0', u'bulk_count'],
                [u'1094', u'0', u'0', u'0', u'0', u'large_rawcount'],
                [u'[teaming_start]'],
                [
                    u'TeamName', u'TeamingMode', u'LoadBalancingAlgorithm',
                    u'MemberMACAddresses', u'MemberNames',
                    u'MemberDescriptions', u'Speed', u'GUID'
                ],
                [
                    u'LAN ', u'SwitchIndependent ', u'Dynamic ',
                    u'38:63:BB:44:D0:24;38:63:BB:44:D0:25', u'nic1;nic2',
                    u'HPE Ethernet 1Gb 4-port 331i Adapter;HPE Ethernet 1Gb 4-port 331i Adapter #2',
                    u'1000000000;1000000000',
                    u'{4DA62AA0-8163-459C-9ACE-95B1E729A7DD};{FEF2305A-57FD-4AEC-A817-C082565B6AA7}'
                ],
                [u'[teaming_end]'],
                [
                    u'Node', u'MACAddress', u'Name', u'NetConnectionID',
                    u'NetConnectionStatus', u'Speed', u'GUID'
                ],
                [
                    u'S5EXVM318 ', u' 38:63:BB:44:D0:26 ',
                    u' HPE Ethernet 1Gb 4-port 331i Adapter #3 ',
                    u' nic3-vl302 ', u' 2 ', u' 1000000000 ',
                    u' {5FBD3455-980D-4AD6-BDEE-79B42B7BBDBC}'
                ],
                [
                    u'S5EXVM318 ', u' 38:63:BB:44:D0:27 ',
                    u' HPE Ethernet 1Gb 4-port 331i Adapter #4 ',
                    u' nic4-vl303 ', u' 2 ', u' 1000000000 ',
                    u' {8A1D9DD0-DF30-46CD-87FC-ACB13A5AB2BA}'
                ],
                [
                    u'S5EXVM318 ', u' 38:63:BB:44:D0:24 ',
                    u' HPE Ethernet 1Gb 4-port 331i Adapter ', u' nic1 ',
                    u' 2 ', u'  ', u' {4DA62AA0-8163-459C-9ACE-95B1E729A7DD}'
                ],
                [
                    u'S5EXVM318 ', u' 38:63:BB:44:D0:25 ',
                    u' HPE Ethernet 1Gb 4-port 331i Adapter ', u' nic2 ',
                    u' 2 ', u'  ', u' {FEF2305A-57FD-4AEC-A817-C082565B6AA7}'
                ],
                [
                    u'S5EXVM318 ', u' 38:63:BB:44:D0:24 ',
                    u' Microsoft Network Adapter Multiplexor Driver ',
                    u' LAN ', u' 2 ', u' 2000000000 ',
                    u' {69DCC9F6-FD98-474C-87F8-DD1023C6117C}'
                ],
            ]),
        )) == [
            Service(
                item='HPE Ethernet 1Gb 4-port 331i Adapter 3',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1000000000
                },
            ),
            Service(
                item='HPE Ethernet 1Gb 4-port 331i Adapter 4',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1000000000
                },
            ),
            Service(
                item='HPE Ethernet 1Gb 4-port 331i Adapter',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1000000000
                },
            ),
            Service(
                item='HPE Ethernet 1Gb 4-port 331i Adapter 2',
                parameters={
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 1000000000
                },
            ),
            Service(
                item='LAN',
                parameters={
                    'aggregate': {
                        'member_appearance': 'descr'
                    },
                    'discovered_oper_status': ['1'],
                    'discovered_speed': 2000000000.0
                },
            ),
        ]