From 7d69a1eae658fae6c7437e0a8316312cb625acb5 Mon Sep 17 00:00:00 2001 From: akhilbatra898 Date: Sat, 18 Mar 2017 14:16:26 +0530 Subject: Add unit tests for List and get in API. - refactor controllers - remove abspath and other irrelvant data in response - move fixtures - refactor decorators JIRA: QTIP-226 Change-Id: I5fac5b1bc998da198098992e7ddb47ba49685f31 Signed-off-by: akhilbatra898 (cherry picked from commit bef693f40ad87170b7233b9fef62f2fd8abfc8d8) --- qtip/api/controllers/plan.py | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) (limited to 'qtip/api/controllers/plan.py') diff --git a/qtip/api/controllers/plan.py b/qtip/api/controllers/plan.py index 93836a32..00593878 100644 --- a/qtip/api/controllers/plan.py +++ b/qtip/api/controllers/plan.py @@ -9,30 +9,23 @@ import httplib -import connexion - +from qtip.api.controllers import common from qtip.base import error from qtip.loader import plan def list_plans(): - plan_list = list(plan.Plan.list_all()) - return plan_list, httplib.OK + plans = list(plan.Plan.list_all()) + plans_by_name = [p['name'] for p in plans] + return {'plans': plans_by_name}, httplib.OK +@common.check_endpoint_for_error(resource='Plan') def get_plan(name): - try: - plan_spec = plan.Plan(name) - return {'name': plan_spec.name, - 'abspath': plan_spec.abspath, - 'content': plan_spec.content}, httplib.OK - except error.NotFoundError: - return connexion.problem(httplib.NOT_FOUND, - 'Plan Not Found', - 'requested plan `' + name + '` not found.') + plan_spec = plan.Plan(name) + return plan_spec.content +@common.check_endpoint_for_error(resource='Plan', operation='Run') def run_plan(name, action="run"): - return connexion.problem(httplib.NOT_IMPLEMENTED, - 'Run a plan', - 'Plan runner not implemented') + raise error.ToBeDoneError('run_plan', 'plan') -- cgit 1.2.3-korg