aboutsummaryrefslogtreecommitdiffstats
path: root/api/actions/result.py
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2016-12-21 01:07:26 +0000
committerchenjiankun <chenjiankun1@huawei.com>2016-12-22 11:11:37 +0000
commit70d25b87c167bc13e883da2963980cce56410f98 (patch)
treea9ecd80e6ed440001f9f7b5a595f0e9ddc0c05cf /api/actions/result.py
parentad37cb3cc16f8979caf7dc836e4fda8fe7955d5c (diff)
Yardstick API refactor
JIRA: YARDSTICK-503 Now in api/views.py there are many redundant code. So I do some refactoring and make it to be a lightweight framework. Change-Id: Id7cecc95e60f5403b2d26239a3ef41d01bbb542a Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'api/actions/result.py')
-rw-r--r--api/actions/result.py63
1 files changed, 0 insertions, 63 deletions
diff --git a/api/actions/result.py b/api/actions/result.py
deleted file mode 100644
index 1f200fbcc..000000000
--- a/api/actions/result.py
+++ /dev/null
@@ -1,63 +0,0 @@
-##############################################################################
-# Copyright (c) 2016 Huawei Technologies Co.,Ltd and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-import logging
-import uuid
-import re
-
-from api.utils import influx as influx_utils
-from api.utils import common as common_utils
-from api import conf
-
-logger = logging.getLogger(__name__)
-
-
-def getResult(args):
- try:
- measurement = args['measurement']
- task_id = args['task_id']
-
- if re.search("[^a-zA-Z0-9_-]", measurement):
- raise ValueError('invalid measurement parameter')
-
- uuid.UUID(task_id)
- except KeyError:
- message = 'measurement and task_id must be provided'
- return common_utils.error_handler(message)
-
- query_template = "select * from %s where task_id='%s'"
- query_sql = query_template % ('tasklist', task_id)
- data = common_utils.translate_to_str(influx_utils.query(query_sql))
-
- def _unfinished():
- return common_utils.result_handler(0, [])
-
- def _finished():
- query_sql = query_template % (conf.TEST_CASE_PRE + measurement,
- task_id)
- data = common_utils.translate_to_str(influx_utils.query(query_sql))
- if not data:
- query_sql = query_template % (measurement, task_id)
- data = common_utils.translate_to_str(influx_utils.query(query_sql))
-
- return common_utils.result_handler(1, data)
-
- def _error():
- return common_utils.result_handler(2, data[0]['error'])
-
- try:
- status = data[0]['status']
-
- switcher = {
- 0: _unfinished,
- 1: _finished,
- 2: _error
- }
- return switcher.get(status, lambda: 'nothing')()
- except IndexError:
- return common_utils.error_handler('no such task')