Skip to content
Snippets Groups Projects
Commit 07db6a02 authored by Sam Roberts's avatar Sam Roberts
Browse files

all code paths in endpoint covered by unit tests

parent 1a5861b1
No related branches found
No related tags found
1 merge request!3Feature/reporting 311 add msr asn peers
......@@ -1206,7 +1206,7 @@ def asn_peers(asn):
def _get_filtered_peers_for_asn(asn, group, instance):
peers = json.loads(r.get(f'juniper-peerings:peer-asn:{asn}'))
def _attribute_filter(peer, name, value):
if value is None:
return True # no filter parameter given in request
......
......@@ -358,7 +358,7 @@ def test_get_vpn_proxy_peerings(client, mocked_redis):
"/378?instance=IAS",
"/378?group=IAS-NRENS&instance=IAS"
])
def test_get_asn_peers(endpoint_variant, client, mocked_redis):
def test_get_asn_peers_get(endpoint_variant, client, mocked_redis):
rv = client.get(
f'/msr/asn-peers{endpoint_variant}',
headers=DEFAULT_REQUEST_HEADERS
......@@ -368,3 +368,26 @@ def test_get_asn_peers(endpoint_variant, client, mocked_redis):
response_data = json.loads(rv.data.decode('utf-8'))
jsonschema.validate(response_data, PEERING_LIST_SCHEMA)
assert response_data # test data is non-empty
@pytest.mark.parametrize('endpoint_variant,post_body', [
("", '{}'),
("", '{"group": "IAS-NRENS"}'),
("", '{"instance": "IAS"}'),
("", '{"group": "IAS-NRENS", "instance": "IAS"}'),
("/378", '{}'),
("/378", '{"group": "IAS-NRENS"}'),
("/378", '{"instance": "IAS"}'),
("/378", '{"group": "IAS-NRENS", "instance": "IAS"}')
])
def test_get_asn_peers_post(endpoint_variant, post_body, client, mocked_redis):
rv = client.post(
f'/msr/asn-peers{endpoint_variant}',
headers=DEFAULT_REQUEST_HEADERS,
json=post_body
)
assert rv.status_code == 200
assert rv.is_json
response_data = json.loads(rv.data.decode('utf-8'))
jsonschema.validate(response_data, PEERING_LIST_SCHEMA)
assert response_data # test data is non-empty
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment