From 47db335d112489afe8e7cab4950a868ebae2c470 Mon Sep 17 00:00:00 2001 From: Nikolay Stanchev <ns17@it-innovation.soton.ac.uk> Date: Tue, 10 Jul 2018 12:18:05 +0100 Subject: [PATCH] Updates graph api tests --- src/service/clmcservice/graphapi/tests.py | 15 +++++++++++++++ src/service/clmcservice/graphapi/utilities.py | 9 ++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/service/clmcservice/graphapi/tests.py b/src/service/clmcservice/graphapi/tests.py index 04c687e..ddb3870 100644 --- a/src/service/clmcservice/graphapi/tests.py +++ b/src/service/clmcservice/graphapi/tests.py @@ -126,6 +126,21 @@ class TestGraphAPI(object): error_raised = True assert error_raised, "A bad request error must have been raised in case of invalid URL parameters." + service_functions = dict(nginx={"measurement_name": "nginx", "response_time_field": "mean(avg_processing_time)"}, + minio={"measurement_name": "minio_http", "response_time_field": "mean(total_processing_time)/mean(total_requests_count)"}, + apache={"measurement_name": "apache", "response_time_field": "mean(avg_processing_time)"}) + body = dumps(dict(database=test_db_name, retention_policy="autogen", service_function_chain_instance="sfc_1", service_functions=service_functions)) + request = testing.DummyRequest() + request.params["from"] = "not a timestamp" + request.params["to"] = "not a timestamp" + request.body = body.encode(request.charset) + error_raised = False + try: + GraphAPI(request).build_temporal_graph() + except HTTPBadRequest: + error_raised = True + assert error_raised, "A bad request error must have been raised in case of invalid URL parameters." + service_functions = dict(nginx={"measurement_name": "nginx", "response_time_field": "mean(avg_processing_time)"}, minio={"measurement_name": "minio_http", "response_time_field": "mean(total_processing_time)/mean(total_requests_count)"}) build_json_body = dict(database=test_db_name, retention_policy="autogen", service_function_chain_instance="test_sfc1_1", service_functions=service_functions) diff --git a/src/service/clmcservice/graphapi/utilities.py b/src/service/clmcservice/graphapi/utilities.py index c4ef5ed..93bcd09 100644 --- a/src/service/clmcservice/graphapi/utilities.py +++ b/src/service/clmcservice/graphapi/utilities.py @@ -96,9 +96,12 @@ def validate_graph_url_params(params): assert param in params, "Incorrect url parameters - required url query parameter '{0}' is not found in the request parameters.".format(param) url_params[param] = params[param] - # convert timestamps to integers - url_params['from'] = int(url_params['from']) - url_params['to'] = int(url_params['to']) + try: + # convert timestamps to integers + url_params['from'] = int(url_params['from']) + url_params['to'] = int(url_params['to']) + except ValueError: + assert False, "Invalid URL timestamp parameters" return url_params -- GitLab