summaryrefslogtreecommitdiffstats
path: root/result_collection_api/opnfv_testapi/router
diff options
context:
space:
mode:
authorSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-01 17:00:11 +0800
committerSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-01 17:11:05 +0800
commit2d2a12935a39aa8fc7dc615da9058085a1661876 (patch)
tree70fbc1b091beeded79200fb0df16e9c336530148 /result_collection_api/opnfv_testapi/router
parent59cba325d8132186d27aefa959d4bed730e4e68d (diff)
add router package to implement url-2-XXXHandlers mappings in testAPI project
and eliminate flake8 violation JIRA: FUNCTEST-285 Change-Id: I15b568a97279032549f24ff81520220e271f3488 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'result_collection_api/opnfv_testapi/router')
-rw-r--r--result_collection_api/opnfv_testapi/router/__init__.py1
-rw-r--r--result_collection_api/opnfv_testapi/router/url_mappings.py48
2 files changed, 49 insertions, 0 deletions
diff --git a/result_collection_api/opnfv_testapi/router/__init__.py b/result_collection_api/opnfv_testapi/router/__init__.py
new file mode 100644
index 0000000..3ed9fd0
--- /dev/null
+++ b/result_collection_api/opnfv_testapi/router/__init__.py
@@ -0,0 +1 @@
+__author__ = 'root'
diff --git a/result_collection_api/opnfv_testapi/router/url_mappings.py b/result_collection_api/opnfv_testapi/router/url_mappings.py
new file mode 100644
index 0000000..c299ada
--- /dev/null
+++ b/result_collection_api/opnfv_testapi/router/url_mappings.py
@@ -0,0 +1,48 @@
+from opnfv_testapi.resources.handlers import VersionHandler
+from opnfv_testapi.resources.testcase_handlers import TestcaseCLHandler, \
+ TestcaseGURHandler
+from opnfv_testapi.resources.pod_handlers import PodCLHandler, PodGURHandler
+from opnfv_testapi.resources.project_handlers import ProjectCLHandler, \
+ ProjectGURHandler
+from opnfv_testapi.resources.result_handlers import ResultsCLHandler, \
+ ResultsGURHandler
+from opnfv_testapi.resources.dashboard_handlers import DashboardHandler
+
+
+mappings = [
+ # GET /versions => GET API version
+ (r"/versions", VersionHandler),
+
+ # few examples:
+ # GET /api/v1/pods => Get all pods
+ # GET /api/v1/pods/1 => Get details on POD 1
+ (r"/api/v1/pods", PodCLHandler),
+ (r"/api/v1/pods/([^/]+)", PodGURHandler),
+
+ # few examples:
+ # GET /projects
+ # GET /projects/yardstick
+ (r"/api/v1/projects", ProjectCLHandler),
+ (r"/api/v1/projects/([^/]+)", ProjectGURHandler),
+
+ # few examples
+ # GET /projects/qtip/cases => Get cases for qtip
+ (r"/api/v1/projects/([^/]+)/cases", TestcaseCLHandler),
+ (r"/api/v1/projects/([^/]+)/cases/([^/]+)", TestcaseGURHandler),
+
+ # new path to avoid a long depth
+ # GET /results?project=functest&case=keystone.catalog&pod=1
+ # => get results with optional filters
+ # POST /results =>
+ # Push results with mandatory request payload parameters
+ # (project, case, and pod)
+ (r"/api/v1/results", ResultsCLHandler),
+ (r"/api/v1/results/([^/]+)", ResultsGURHandler),
+
+ # Method to manage Dashboard ready results
+ # GET /dashboard?project=functest&case=vPing&pod=opnfv-jump2
+ # => get results in dasboard ready format
+ # get /dashboard
+ # => get the list of project with dashboard ready results
+ (r"/dashboard/v1/results", DashboardHandler),
+]