Skip to content
Snippets Groups Projects
Commit f6f49d50 authored by Robert Latta's avatar Robert Latta
Browse files

added tests for fiberlink classification

parent c8340ea6
No related branches found
No related tags found
No related merge requests found
......@@ -461,3 +461,69 @@ def test_coriant_info_not_found(client, mocker):
headers=DEFAULT_REQUEST_HEADERS)
assert rv.status_code == 404
def test_infinera_unparseable_fiberlink(client):
rv = client.get(
'/classifier/infinera-fiberlink-info/unparseableentitystring/aaa',
headers=DEFAULT_REQUEST_HEADERS)
assert rv.status_code == 422
rv = client.get(
'/classifier/infinera-fiberlink-info/XXX-OLA1-XXX02-DTNX10-1/aaa',
headers=DEFAULT_REQUEST_HEADERS)
assert rv.status_code == 422
def test_infinera_fiberlink_not_found(client):
rv = client.get(
'/classifier/infinera-fiberlink-info/'
'XXX-OLA1-XXX02-DTNX10-1/1-A-2-L1_3-A-2-L1',
headers=DEFAULT_REQUEST_HEADERS)
assert rv.status_code == 404
def test_infinera_fiberlink(client, mocker):
# mocker.patch('inventory_provider.routes.classifier.json.dumps')
mocked_redis = mocker.patch(
'inventory_provider.routes.classifier.common.get_current_redis')
mg = mocked_redis.return_value.get
mg.side_effect = [
False,
b"[{\"ne\": \"XXX-OLA1-1\", \"df_route\": \"end1-end2-dfroute\", \"df_route_id\": 1234, \"df_status\": \"Operational\", \"pop\": \"POP 1\", \"pop_abbreviation\": \"p1\"}]", # noqa
b"[{\"ne\": \"XXX02-DTNX10-1-3\", \"df_route\": \"end1-end2-dfroute\", \"df_route_id\": 1234, \"df_status\": \"Operational\", \"pop\": \"POP 2\", \"pop_abbreviation\": \"p2\"}]", # noqa
]
mocked_tls = mocker.patch(
'inventory_provider.routes.classifier.get_top_level_services')
mocked_tls.return_value = {'a': 'A'}
rv = client.get(
'/classifier/infinera-fiberlink-info/'
'XXX-OLA1-XXX02-DTNX10-1/1-A-2-L1_3-A-2-L1',
headers=DEFAULT_REQUEST_HEADERS)
mg.assert_any_call(
'classifier-cache:fiberlink:XXX-OLA1-XXX02-DTNX10-1:1-A-2-L1_3-A-2-L1')
mg.assert_any_call('opsdb:ne_fibre_spans:XXX-OLA1-1')
mg.assert_any_call('opsdb:ne_fibre_spans:XXX02-DTNX10-1-3')
mocked_tls.assert_called_with(1234, mocker.ANY)
expected = {
'ends': {
'a': {
'pop': 'POP 1',
'pop_abbreviation': 'p1',
},
'b': {
'pop': 'POP 2',
'pop_abbreviation': 'p2',
},
},
'df_route': {
'id': 1234,
'name': 'end1-end2-dfroute',
'status': 'Operational',
},
'related-services': {'a': 'A'}
}
assert rv.status_code == 200
assert rv.get_data(as_text=True) == json.dumps(expected)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment