def test_uptime_check_zero(): with on_time("2018-04-15 16:50", "CET"): assert list(uptime_utils.check({}, uptime_utils.Section(0, None))) == [ Result(state=State.OK, summary="Up since Apr 15 2018 18:50:00"), Result(state=State.OK, summary="Uptime: 0 seconds"), Metric("uptime", 0.0), ]
def test_parse_piggy_back(): uptime_section = parse_gce_uptime( [ [ '{"metric": {"type": "compute.googleapis.com/instance/uptime_total", "labels": {}}, "resource": {"type": "gce_instance", "labels": {"project_id": "tribe29-check-development", "instance_id": "4916403162284897775"}}, "metric_kind": 1, "value_type": 2, "points": [{"interval": {"start_time": "2022-05-05T13:55:15.478132Z", "end_time": "2022-05-05T13:55:15.478132Z"}, "value": {"int64_value": "10"}}], "unit": ""}' ], ] ) assert uptime_section == uptime.Section(uptime_sec=10, message=None)
def test_uptime_check_zero(): with on_time('2018-04-15 16:50', 'CET'): assert list( uptime_utils.check(Parameters({}), uptime_utils.Section( 0, None))) == [ Result(state=State.OK, summary='Up since Apr 15 2018 18:50:00'), Result(state=State.OK, summary='Uptime: 0 seconds'), Metric("uptime", 0.0), ]
def test_uptime_check_basic(): with on_time("2018-04-15 16:50", "CET"): assert list(uptime_utils.check({}, uptime_utils.Section( 123, None))) == [ Result(state=State.OK, summary="Up since Apr 15 2018 18:47:57"), Result(state=State.OK, summary="Uptime: 2 minutes 3 seconds"), Metric("uptime", 123.0), ]
def test_uptime_check_basic(): with on_time('2018-04-15 16:50', 'CET'): assert list( uptime_utils.check(Parameters({}), uptime_utils.Section( 123, None))) == [ Result(state=State.OK, summary='Up since Apr 15 2018 18:47:57'), Result(state=State.OK, summary='Uptime: 2 minutes 3 seconds'), Metric("uptime", 123.0), ]
def test_discovery_docker_container_status(): _test_discovery( docker.discover_docker_container_status, PARSED, [Service(item=None, parameters={}, labels=[])], ) def test_check_docker_container_status(): expected_results = [Result(state=state.OK, summary='Container running')] assert list(docker.check_docker_container_status(PARSED)) == expected_results @pytest.mark.parametrize("section_uptime, expected_services", [ ( uptime.Section(123456789, None), [], ), ( {}, [ Service(item=None, parameters={}, labels=[]), ], ), ]) def test_discovery_docker_container_status_uptime(section_uptime, expected_services): _test_discovery( lambda parsed: docker.discover_docker_container_status_uptime(parsed, section_uptime), PARSED, expected_services, )
def test_inventory_if(): with on_time(1601310544, 'UTC'): assert list(inventory_if( Parameters({}), SECTION_INV_IF, uptime.Section(7612999, None), )) == [ TableRow(path=['networking', 'interfaces'], key_columns={'index': 1}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'Vlan-interface1', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 32769}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'port-channel 1', 'alias': '', 'last_change': 1601251200 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49152}, inventory_columns={ 'speed': 0, 'phys_address': '', 'oper_status': 1, 'admin_status': 1, 'port_type': 23 }, status_columns={ 'description': 'AUX0', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49153}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/1', 'alias': 'Uplink sw-ks-01', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49154}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/2', 'alias': 'Uplink sw-ks-01', 'last_change': 1601251200 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49155}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/3', 'alias': 'pve-muc', 'last_change': 1596240000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49156}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/4', 'alias': 'pve-muc-ipmi', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49157}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/5', 'alias': 'monitoring', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49158}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/6', 'alias': 'monitoring-ipmi', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49159}, inventory_columns={ 'speed': 10000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/7', 'alias': 'pve-muc', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49160}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/8', 'alias': 'pve-muc1-ipmi', 'last_change': 1601251200 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49161}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/9', 'alias': 'esxi', 'last_change': 1599004800 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49162}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/10', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49163}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/11', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49164}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/12', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49165}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/13', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49166}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/14', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49167}, inventory_columns={ 'speed': 1000000000, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 1, 'admin_status': 1, 'port_type': 6, 'available': False }, status_columns={ 'description': 'gigabitEthernet 1/0/15', 'alias': '', 'last_change': 1597190400 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49168}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/16', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49169}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/17', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49170}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/18', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49171}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/19', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49172}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/20', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49173}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/21', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49174}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/22', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49175}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/23', 'alias': ' ', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49176}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/24', 'alias': ' ', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49177}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/25', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49178}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/26', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49179}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/27', 'alias': '', 'last_change': 1593648000 }), TableRow(path=['networking', 'interfaces'], key_columns={'index': 49180}, inventory_columns={ 'speed': 0, 'phys_address': '74:DA:88:58:16:11', 'oper_status': 2, 'admin_status': 1, 'port_type': 6, 'available': True }, status_columns={ 'description': 'gigabitEthernet 1/0/28', 'alias': '', 'last_change': 1593648000 }), Attributes(path=['networking'], inventory_attributes={ 'available_ethernet_ports': '19', 'total_ethernet_ports': '30', 'total_interfaces': '31' }, status_attributes={}), ]
def test_inventory_if(): with on_time(1601310544, "UTC"): assert sort_inventory_result( inventory_if( {}, SECTION_INV_IF, uptime.Section(7612999, None), )) == sort_inventory_result([ TableRow( path=["networking", "interfaces"], key_columns={ "index": 1, "description": "Vlan-interface1", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 32769, "description": "port-channel 1", "alias": "", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1601251200}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49152, "description": "AUX0", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "", "oper_status": 1, "admin_status": 1, "port_type": 23, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49153, "description": "gigabitEthernet 1/0/1", "alias": "Uplink sw-ks-01", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49154, "description": "gigabitEthernet 1/0/2", "alias": "Uplink sw-ks-01", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1601251200}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49155, "description": "gigabitEthernet 1/0/3", "alias": "pve-muc", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1596240000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49156, "description": "gigabitEthernet 1/0/4", "alias": "pve-muc-ipmi", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49157, "description": "gigabitEthernet 1/0/5", "alias": "monitoring", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49158, "description": "gigabitEthernet 1/0/6", "alias": "monitoring-ipmi", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49159, "description": "gigabitEthernet 1/0/7", "alias": "pve-muc", }, inventory_columns={ "speed": 10000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49160, "description": "gigabitEthernet 1/0/8", "alias": "pve-muc1-ipmi", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1601251200}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49161, "description": "gigabitEthernet 1/0/9", "alias": "esxi", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1599004800}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49162, "description": "gigabitEthernet 1/0/10", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49163, "description": "gigabitEthernet 1/0/11", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49164, "description": "gigabitEthernet 1/0/12", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49165, "description": "gigabitEthernet 1/0/13", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49166, "description": "gigabitEthernet 1/0/14", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49167, "description": "gigabitEthernet 1/0/15", "alias": "", }, inventory_columns={ "speed": 1000000000, "phys_address": "74:DA:88:58:16:11", "oper_status": 1, "admin_status": 1, "port_type": 6, "available": False, }, status_columns={"last_change": 1597190400}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49168, "description": "gigabitEthernet 1/0/16", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49169, "description": "gigabitEthernet 1/0/17", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49170, "description": "gigabitEthernet 1/0/18", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49171, "description": "gigabitEthernet 1/0/19", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49172, "description": "gigabitEthernet 1/0/20", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49173, "description": "gigabitEthernet 1/0/21", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49174, "description": "gigabitEthernet 1/0/22", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49175, "description": "gigabitEthernet 1/0/23", "alias": " ", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49176, "description": "gigabitEthernet 1/0/24", "alias": " ", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49177, "description": "gigabitEthernet 1/0/25", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49178, "description": "gigabitEthernet 1/0/26", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49179, "description": "gigabitEthernet 1/0/27", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49180, "description": "gigabitEthernet 1/0/28", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "admin_status": 1, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), TableRow( path=["networking", "interfaces"], key_columns={ "index": 49181, "description": "gigabitEthernet 1/0/28", "alias": "", }, inventory_columns={ "speed": 0, "phys_address": "74:DA:88:58:16:11", "oper_status": 2, "port_type": 6, "available": True, }, status_columns={"last_change": 1593648000}, ), Attributes( path=["networking"], inventory_attributes={ "available_ethernet_ports": 20, "total_ethernet_ports": 31, "total_interfaces": 32, }, status_attributes={}, ), ])
@pytest.mark.parametrize("string, result", [ ('22 day(s), 8:46', 1932360), ('4 day(s), 3 hr(s)', 356400), ('76 day(s), 26 min(s)', 6567960), ('1086 day(s)', 93830400), ('5 min(s)', 300), ('2 hr(s)', 7200), ]) def test_human_read_uptime(string, result): assert uptime.parse_human_read_uptime(string) == result @pytest.mark.parametrize("section, do_discover", [ (uptime_utils.Section(12, None), True), (uptime_utils.Section(None, None), False), ]) def test_uptime_discovery(section, do_discover): assert bool(list(uptime_utils.discover(section))) is do_discover def test_uptime_check_basic(): with on_time('2018-04-15 16:50', 'CET'): assert list( uptime_utils.check(Parameters({}), uptime_utils.Section( 123, None))) == [ Result(state=State.OK, summary='Up since Apr 15 2018 18:47:57'), Result(state=State.OK,