-import json
+##############################################################################
+# 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
+##############################################################################
+from __future__ import absolute_import
import logging
+import os
-from flask import request
-from flask_restful import Resource
+from flasgger.utils import swag_from
-from api.utils import common as common_utils
-from api.actions import test as test_action
-from api import conf
+from api.base import ApiResource
+from api.swagger import models
logger = logging.getLogger(__name__)
+logger.setLevel(logging.DEBUG)
-class Test(Resource):
+TestCaseActionModel = models.TestCaseActionModel
+TestCaseActionArgsModel = models.TestCaseActionArgsModel
+TestCaseActionArgsOptsModel = models.TestCaseActionArgsOptsModel
+TestCaseActionArgsOptsTaskArgModel = models.TestCaseActionArgsOptsTaskArgModel
+
+
+class Asynctask(ApiResource):
+ def get(self):
+ return self._dispatch_get()
+
+
+class Testcases(ApiResource):
+ def get(self):
+ return self._dispatch_get()
+
+
+class ReleaseAction(ApiResource):
+ @swag_from(os.getcwd() + '/swagger/docs/release_action.yaml')
+ def post(self):
+ return self._dispatch_post()
+
+
+class SamplesAction(ApiResource):
+
+ def post(self):
+ return self._dispatch_post()
+
+
+TestSuiteActionModel = models.TestSuiteActionModel
+TestSuiteActionArgsModel = models.TestSuiteActionArgsModel
+TestSuiteActionArgsOptsModel = models.TestSuiteActionArgsOptsModel
+TestSuiteActionArgsOptsTaskArgModel = \
+ models.TestSuiteActionArgsOptsTaskArgModel
+
+
+class TestsuitesAction(ApiResource):
+ @swag_from(os.getcwd() + '/swagger/docs/testsuites_action.yaml')
+ def post(self):
+ return self._dispatch_post()
+
+
+ResultModel = models.ResultModel
+
+
+class Results(ApiResource):
+
+ @swag_from(os.getcwd() + '/swagger/docs/results.yaml')
+ def get(self):
+ return self._dispatch_get()
+
+
+class EnvAction(ApiResource):
+
def post(self):
- action = common_utils.translate_to_str(request.json.get('action', ''))
- args = common_utils.translate_to_str(request.json.get('args', {}))
- logger.debug('Input args is: action: %s, args: %s', action, args)
-
- if action not in conf.TEST_ACTION:
- logger.error('Wrong action')
- result = {
- 'status': 'error',
- 'message': 'wrong action'
- }
- return json.dumps(result)
-
- method = getattr(test_action, action)
- return method(args)
+ return self._dispatch_post()