Skip to content
Snippets Groups Projects
test_gws_direct.py 3.38 KiB
Newer Older
import responses
from brian_dashboard_manager.templating.gws import generate_gws
from brian_dashboard_manager.inventory_provider.interfaces import \
    get_gws_direct


TEST_DATA = [
    {
        "nren": "ARNES",
        "isp": "Cogent",
        "hostname": "88.200.0.63",
        "tag": "a",
        "counters": [
            {
                "field": "discards_in",
                "oid": "1.3.6.1.2.1.2.2.1.13.533",
                "community": "gn2nocT3st"
            },
            {
                "field": "discards_out",
                "oid": "1.3.6.1.2.1.2.2.1.19.533",
                "community": "gn2nocT3st"
            },
            {
                "field": "errors_in",
                "oid": "1.3.6.1.2.1.2.2.1.14.533",
                "community": "gn2nocT3st"
            },
            {
                "field": "errors_out",
                "oid": "1.3.6.1.2.1.2.2.1.20.533",
                "community": "gn2nocT3st"
            }
        ]
    },
    {
        "nren": "ARNES",
        "isp": "Cogent",
        "hostname": "88.200.0.63",
        "tag": "b",
        "counters": [
            {
                "field": "traffic_in",
                "oid": "1.3.6.1.2.1.31.1.1.1.6.531",
                "community": "gn2nocT3st"
            },
            {
                "field": "traffic_out",
                "oid": "1.3.6.1.2.1.31.1.1.1.10.531",
                "community": "gn2nocT3st"
            }
        ]
    },
    {
        "nren": "ARNES",
        "isp": "Cogent",
        "hostname": "88.200.0.63",
        "tag": "c",
        "counters": [
            {
                "field": "traffic_in",
                "oid": "1.3.6.1.2.1.31.1.1.1.6.525",
                "community": "gn2nocT3st"
            },
            {
                "field": "traffic_out",
                "oid": "1.3.6.1.2.1.31.1.1.1.10.525",
                "community": "gn2nocT3st"
            }
        ]
    },
    {
        "nren": "ARNES",
        "isp": "Cogent",
        "hostname": "88.200.0.63",
        "tag": "d",
        "counters": [
            {
                "field": "traffic_in",
                "oid": "1.3.6.1.2.1.31.1.1.1.6.553",
                "community": "gn2nocT3st"
            },
            {
                "field": "traffic_out",
                "oid": "1.3.6.1.2.1.31.1.1.1.10.553",
                "community": "gn2nocT3st"
            }
        ]
    },
    {
        "nren": "ARNES",
        "isp": "Telia",
        "hostname": "62.40.124.6",
        "tag": "a",
        "counters": [
            {
                "field": "traffic_in",
                "oid": "1.3.6.1.2.1.31.1.1.1.6.611",
                "community": "gn2nocT3st"
            },
            {
                "field": "traffic_out",
                "oid": "1.3.6.1.2.1.31.1.1.1.10.611",
                "community": "gn2nocT3st"
            }
        ]
    }
]


@responses.activate
def test_gws(data_config, client):
        method=responses.GET,
        url=f"{data_config['inventory_provider']}/poller/gws/direct",

    gws_data = get_gws_direct(data_config['inventory_provider'])

    dashboards = list(generate_gws(gws_data, 'testdatasource'))

    assert len(dashboards) == 2

    assert dashboards[0]['title'] == 'GWS Direct - Cogent'
    assert len(dashboards[0]['panels']) == 3

    assert dashboards[1]['title'] == 'GWS Direct - Telia'
    assert len(dashboards[1]['panels']) == 1