Skip to content
Snippets Groups Projects
Commit 4a6b2faa authored by Erik Reid's avatar Erik Reid
Browse files

mock inventory provider responses with test data

parent 9c79bcaf
No related branches found
No related tags found
No related merge requests found
......@@ -155,6 +155,7 @@ INPROV_SERVICE_LIST_SCHEMA = {
'items': {'$ref': '#/definitions/service'}
}
INPROV_API_URL_TODO = 'https://test-inprov01.geant.org'
@router.get("/sites")
def get_sites() -> SiteList:
"""
......@@ -164,7 +165,7 @@ def get_sites() -> SiteList:
# TODO: catch/handle the usual exceptions
rv = requests.get(
'https://test-inprov01.geant.org/map/sites',
f'{INPROV_API_URL_TODO}/map/sites',
headers={'Accept': 'application/json'})
rv.raise_for_status()
site_list_json = rv.json()
......@@ -182,7 +183,7 @@ def get_routers() -> RouterList:
# TODO: catch/handle the usual exceptions
rv = requests.get(
'https://test-inprov01.geant.org/map/routers',
f'{INPROV_API_URL_TODO}/map/routers',
headers={'Accept': 'application/json'})
rv.raise_for_status()
router_list_json = rv.json()
......@@ -200,7 +201,7 @@ def get_trunks() -> ServiceList:
# TODO: catch/handle the usual exceptions
rv = requests.get(
'https://test-inprov01.geant.org/map/services/IP TRUNK',
f'{INPROV_API_URL_TODO}/map/services/IP TRUNK',
headers={'Accept': 'application/json'})
rv.raise_for_status()
service_list_json = rv.json()
......
[
{
"fqdn": "qfx.par.fr.geant.net",
"site": "PAR"
},
{
"fqdn": "mx2.lis.pt.geant.net",
"site": "LIS"
},
{
"fqdn": "mx1.vie.at.geant.net",
"site": "VIE"
},
{
"fqdn": "qfx.fra.de.geant.net",
"site": "FRA"
},
{
"fqdn": "qfx.lon2.uk.geant.net",
"site": "LON2"
},
{
"fqdn": "mx1.poz.pl.geant.net",
"site": "POZ"
},
{
"fqdn": "rt1.bil.es.geant.net",
"site": "BIL"
},
{
"fqdn": "rt1.chi.md.geant.net",
"site": "CHI"
},
{
"fqdn": "rt0.ath2.gr.geant.net",
"site": "ATH2"
},
{
"fqdn": "rt1.ams.nl.geant.net",
"site": "AMS"
},
{
"fqdn": "rt1.buc.ro.geant.net",
"site": "BUC"
},
{
"fqdn": "rt1.bra.sk.geant.net",
"site": "BRA"
},
{
"fqdn": "rt0.lon.uk.geant.net",
"site": "LON"
},
{
"fqdn": "mx2.zag.hr.geant.net",
"site": "ZAG"
},
{
"fqdn": "srx1.am.office.geant.net",
"site": "AMO"
},
{
"fqdn": "mx1.bud.hu.geant.net",
"site": "BUD"
},
{
"fqdn": "mx1.buc.ro.geant.net",
"site": "BUC"
},
{
"fqdn": "rt0.mil2.it.geant.net",
"site": "MIL2"
},
{
"fqdn": "rt0.mar.fr.geant.net",
"site": "MAR"
},
{
"fqdn": "mx1.lon2.uk.geant.net",
"site": "LON2"
},
{
"fqdn": "mx1.gen.ch.geant.net",
"site": "GEN"
},
{
"fqdn": "mx1.mad.es.geant.net",
"site": "MAD"
},
{
"fqdn": "mx1.par.fr.geant.net",
"site": "PAR"
},
{
"fqdn": "mx1.lon.uk.geant.net",
"site": "LON"
},
{
"fqdn": "srx1.ch.office.geant.net",
"site": "CCH"
},
{
"fqdn": "srx2.am.office.geant.net",
"site": "AMO"
},
{
"fqdn": "srx2.ch.office.geant.net",
"site": "CCH"
},
{
"fqdn": "rt1.kie.ua.geant.net",
"site": "KIE"
},
{
"fqdn": "rt1.fra.de.geant.net",
"site": "FRA"
},
{
"fqdn": "rt1.mar.fr.geant.net",
"site": "MAR"
},
{
"fqdn": "rt1.mil2.it.geant.net",
"site": "MIL2"
},
{
"fqdn": "rt1.por.pt.geant.net",
"site": "POR"
},
{
"fqdn": "rt1.pra.cz.geant.net",
"site": "PRA"
},
{
"fqdn": "rt0.poz.pl.geant.net",
"site": "POZ"
},
{
"fqdn": "rt2.ams.nl.geant.net",
"site": "AMS"
},
{
"fqdn": "rt0.gen.ch.geant.net",
"site": "GEN"
},
{
"fqdn": "rt2.kie.ua.geant.net",
"site": "KIE"
},
{
"fqdn": "rt2.chi.md.geant.net",
"site": "CHI"
},
{
"fqdn": "rt0.zag.hr.geant.net",
"site": "ZAG"
},
{
"fqdn": "rt2.bra.sk.geant.net",
"site": "BRA"
},
{
"fqdn": "rt0.rig.lv.geant.net",
"site": "RIG"
},
{
"fqdn": "rt0.mad.es.geant.net",
"site": "MAD"
},
{
"fqdn": "rt0.kau.lt.geant.net",
"site": "KAU"
},
{
"fqdn": "rt0.the.gr.geant.net",
"site": "THE"
},
{
"fqdn": "rt0.buc.ro.geant.net",
"site": "BUC"
},
{
"fqdn": "rt0.tar.ee.geant.net",
"site": "TAR"
},
{
"fqdn": "rt0.par.fr.geant.net",
"site": "PAR"
},
{
"fqdn": "rt0.bud.hu.geant.net",
"site": "BUD"
},
{
"fqdn": "rt0.bra.sk.geant.net",
"site": "BRA"
},
{
"fqdn": "rt0.pra.cz.geant.net",
"site": "PRA"
},
{
"fqdn": "rt0.lon2.uk.geant.net",
"site": "LON2"
},
{
"fqdn": "rt0.por.pt.geant.net",
"site": "POR"
},
{
"fqdn": "rt0.vie.at.geant.net",
"site": "VIE"
},
{
"fqdn": "rt0.cor.ie.geant.net",
"site": "COR"
},
{
"fqdn": "rt0.dub.ie.geant.net",
"site": "DUB"
},
{
"fqdn": "rt0.bru.be.geant.net",
"site": "BRU"
},
{
"fqdn": "rt0.fra.de.geant.net",
"site": "FRA"
},
{
"fqdn": "rt0.ams.nl.geant.net",
"site": "AMS"
},
{
"fqdn": "rt0.lju.si.geant.net",
"site": "LJU"
},
{
"fqdn": "rt0.sof.bg.geant.net",
"site": "SOF"
},
{
"fqdn": "rt0.ham.de.geant.net",
"site": "HAM"
}
]
[
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-7.0"
}
],
"name": "BIL-DUB-IPTRUNK",
"overlays": {
"speed": 536870912000
},
"sid": "LGS-00044",
"type": "IP TRUNK"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-1"
}
],
"name": "LONDON-LONDON-LAG-005(UNKNOWN)",
"overlays": {
"speed": 214748364800
},
"sid": "GA-000101",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-3"
}
],
"name": "LONDON-LONDON-LAG-003(UNKNOWN)",
"overlays": {
"speed": 429496729600
},
"sid": "LGA-000222",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-2"
}
],
"name": "ATHENS-LONDON-LAG-001(UNKNOWN)",
"overlays": {
"speed": 429496729600
},
"sid": "GA-000662",
"type": "ETHERNET"
},
{
"endpoints": [
{
"addresses": {
"v4": "62.40.98.60/31",
"v6": "2001:798:cc::65/126"
},
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-1.0"
}
],
"name": "LON-LON-IPTRUNK",
"overlays": {
"speed": 214748364800
},
"sid": "GS-00010",
"type": "IP TRUNK"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-3.0"
}
],
"name": "DUB-LON-IPTRUNK",
"overlays": {
"speed": 429496729600
},
"sid": "LGS-00022",
"type": "IP TRUNK"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-8"
}
],
"name": "AMSTERDAM-LONDON-LAG-001(UNKNOWN)",
"overlays": {
"speed": 429496729600
},
"sid": "LGA-00771",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-20"
}
],
"name": "JISC-AP2-LAG",
"overlays": {
"speed": 10737418240
},
"sid": "GA-01760",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-20.2501"
}
],
"name": "JISC-AP2",
"overlays": {
"speed": 10737418240
},
"sid": "GS-00480",
"type": "GEANT IP"
},
{
"endpoints": [
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "lag-20.2522"
}
],
"name": "JISC-AP2-LHCONE",
"overlays": {
"speed": 10737418240
},
"sid": "GS-02474",
"type": "L3-VPN"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-1"
}
],
"name": "UNKNOWN_NOKIA-UNKNOWN_NOKIA-LAG-001(UNKNOWN)",
"overlays": {
"speed": 214748364800
},
"sid": "LGS-000991",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-7"
}
],
"name": "UNKNOWN_NOKIA-UNKNOWN_NOKIA-LAG-002(UNKNOWN)",
"overlays": {
"speed": 429496729600
},
"sid": "LGA-000442",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20"
}
],
"name": "DUBLIN-DUBLIN-LAG-004(UNKNOWN)",
"overlays": {
"speed": 10737418240
},
"sid": "GA-50002",
"type": "ETHERNET"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20.3333"
}
],
"name": "BELNET-AP1-IAS",
"overlays": {
"speed": 10737418240
},
"sid": "GS-00524",
"type": "GEANT PEERING"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20.2433"
}
],
"name": "MARNET-AP1-IAS",
"overlays": {
"speed": 10737418240
},
"sid": "GS-00536",
"type": "GWS - INDIRECT"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20.2410"
}
],
"name": "MARNET-AP1",
"overlays": {
"speed": 10737418240
},
"sid": "GS-12489",
"type": "GEANT IP"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20:765"
},
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "pwe-34784"
}
],
"name": "$GS-50008",
"overlays": {
"speed": 10737418240
},
"sid": "GS-50008",
"type": "GEANT PLUS"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-24.0"
}
],
"name": "IX-PEERINGS-IN-INEX",
"overlays": {
"speed": 10737418240
},
"sid": "GS-00950",
"type": "IP PEERING - NON R&E (PUBLIC)"
},
{
"endpoints": [
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "lag-20:790"
},
{
"hostname": "rt0.dub.ie.geant.net",
"interface": "pwe-31757"
},
{
"hostname": "rt0.lon.uk.geant.net",
"interface": "pwe-31757"
}
],
"name": "DUBLIN-LONDON-ETHS-001(BELNET)",
"overlays": {
"speed": 10737418240
},
"sid": "GS-50035",
"type": "ETHERNET"
}
]
[
{
"city": "AMSTERDAM",
"country": "NETHERLANDS",
"latitude": 52.34638889,
"longitude": 4.93861111,
"name": "AMS"
},
{
"city": "BILBAO",
"country": "SPAIN",
"latitude": 43.3250881,
"longitude": -2.9804526,
"name": "BIL"
},
{
"city": "ATTIKI",
"country": "GREECE",
"latitude": 37.98,
"longitude": 23.73,
"name": "ATH2"
},
{
"city": "CAMBRIDGE",
"country": "UNITED KINGDOM",
"latitude": 52.19152778,
"longitude": 0.13383333,
"name": "CCH"
},
{
"city": "ATHENS",
"country": "GREECE",
"latitude": 37.97308611,
"longitude": 23.74555556,
"name": "ATH"
},
{
"city": "BRATISLAVA",
"country": "SLOVAKIA",
"latitude": 48.116833,
"longitude": 17.094389,
"name": "BRA"
},
{
"city": "BRUSSELS",
"country": "BELGIUM",
"latitude": 50.85694444,
"longitude": 4.41138889,
"name": "BRU"
},
{
"city": "BUCHAREST",
"country": "ROMANIA",
"latitude": 44.44474167,
"longitude": 26.09642222,
"name": "BUC"
},
{
"city": "DUBLIN",
"country": "IRELAND",
"latitude": 53.29198056,
"longitude": -6.41473333,
"name": "DUB"
},
{
"city": "CORK",
"country": "IRELAND",
"latitude": 51.90362538,
"longitude": -8.512314371,
"name": "COR"
},
{
"city": "BUDAPEST",
"country": "HUNGARY",
"latitude": 47.51777778,
"longitude": 19.05527778,
"name": "BUD"
},
{
"city": "CHISINAU",
"country": "MOLDOVA, REPUBLIC OF",
"latitude": 47.03072498,
"longitude": 28.82379273,
"name": "CHI"
},
{
"city": "KAUNAS",
"country": "LITHUANIA",
"latitude": 54.94067222,
"longitude": 24.01801389,
"name": "KAU"
},
{
"city": "KIEV",
"country": "UKRAINE",
"latitude": 50.44909773,
"longitude": 30.46527006,
"name": "KIE"
},
{
"city": "GENEVA",
"country": "SWITZERLAND",
"latitude": 46.2355997,
"longitude": 6.0553345,
"name": "GEN"
},
{
"city": "HAMBURG",
"country": "GERMANY",
"latitude": 53.55090278,
"longitude": 10.04648611,
"name": "HAM"
},
{
"city": "AMSTERDAM - Office",
"country": "NETHERLANDS",
"latitude": 52.31330556,
"longitude": 4.94911111,
"name": "AMO"
},
{
"city": "FRANKFURT",
"country": "GERMANY",
"latitude": 50.12029444,
"longitude": 8.73584444,
"name": "FRA"
},
{
"city": "LONDON",
"country": "UNITED KINGDOM",
"latitude": 51.4981657,
"longitude": -0.0152639,
"name": "LON"
},
{
"city": "ALCOBENDAS",
"country": "SPAIN",
"latitude": 40.53647778,
"longitude": -3.64880278,
"name": "MAD"
},
{
"city": "LISBON",
"country": "PORTUGAL",
"latitude": 38.759325,
"longitude": -9.142339,
"name": "LIS"
},
{
"city": "MARSEILLE",
"country": "FRANCE",
"latitude": 43.338019,
"longitude": 5.347666,
"name": "MAR"
},
{
"city": "LJUBLJANA",
"country": "SLOVENIA",
"latitude": 46.050171,
"longitude": 14.46033,
"name": "LJU"
},
{
"city": "SLOUGH",
"country": "UNITED KINGDOM",
"latitude": 51.5231433,
"longitude": -0.6224058,
"name": "LON2"
},
{
"city": "AUBERVILLIERS",
"country": "FRANCE",
"latitude": 48.90444444,
"longitude": 2.37111111,
"name": "PAR"
},
{
"city": "MILAN",
"country": "ITALY",
"latitude": 45.47527778,
"longitude": 9.10305556,
"name": "MIL2"
},
{
"city": "RIGA",
"country": "LATVIA",
"latitude": 56.94834444,
"longitude": 24.118,
"name": "RIG"
},
{
"city": "PORTO",
"country": "PORTUGAL",
"latitude": 41.177904,
"longitude": -8.594972,
"name": "POR"
},
{
"city": "PRAGUE",
"country": "CZECH REPUBLIC",
"latitude": 50.10166667,
"longitude": 14.39166667,
"name": "PRA"
},
{
"city": "POZNAN",
"country": "POLAND",
"latitude": 52.411775,
"longitude": 16.91756111,
"name": "POZ"
},
{
"city": "SOFIA",
"country": "BULGARIA",
"latitude": 42.67575833,
"longitude": 23.37098611,
"name": "SOF"
},
{
"city": "ZAGREB",
"country": "CROATIA",
"latitude": 45.79194444,
"longitude": 15.96944444,
"name": "ZAG"
},
{
"city": "TARTU",
"country": "ESTONIA",
"latitude": 58.383146,
"longitude": 26.71986,
"name": "TAR"
},
{
"city": "VIENNA",
"country": "AUSTRIA",
"latitude": 48.26888889,
"longitude": 16.41019444,
"name": "VIE"
},
{
"city": "BELGRADE",
"country": "SERBIA",
"latitude": 44.81141383,
"longitude": 20.39871378,
"name": "BEL"
},
{
"city": "THESSALONIKI",
"country": "GREECE",
"latitude": 40.662632,
"longitude": 22.860255,
"name": "THE"
},
{
"city": "GENEVA",
"country": "FR",
"latitude": 46.255952,
"longitude": 6.055262,
"name": "GEN2"
}
]
import json
import os
import re
import responses
from mapping_provider.api.map import SiteList, RouterList, ServiceList
DATA_DIR = os.path.join(os.path.dirname(__file__), 'data')
def _load_test_data(filename: str) -> dict:
with open(os.path.join(DATA_DIR, filename)) as f:
return json.load(f)
# @responses.activate
# def test_inventory_uri_validation():
......@@ -13,22 +23,44 @@ from mapping_provider.api.map import SiteList, RouterList, ServiceList
# == "http://a.b.c:9999/"
# )
@responses.activate
def test_get_sites(client):
responses.add(
method=responses.GET,
url=re.compile(r'.*/map/sites$'),
json=_load_test_data('inprov-sites.json')
)
rv = client.get("/map/sites")
assert rv.status_code == 200
assert rv.json()
SiteList.model_validate(rv.json())
@responses.activate
def test_get_routers(client):
responses.add(
method=responses.GET,
url=re.compile(r'.*/map/routers$'),
json=_load_test_data('inprov-routers.json')
)
rv = client.get("/map/routers")
assert rv.status_code == 200
assert rv.json()
RouterList.model_validate(rv.json())
@responses.activate
def test_get_trunks(client):
responses.add(
method=responses.GET,
url=re.compile(r'.*/map/services.*'),
json=_load_test_data('inprov-services.json')
)
rv = client.get("/map/trunks")
assert rv.status_code == 200
assert rv.json()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment