From de4afff43dfbfb9c05a7b67f29288a6f46485cac Mon Sep 17 00:00:00 2001 From: thuva4 Date: Fri, 23 Mar 2018 12:35:50 +0530 Subject: Add customs CRUD in testapiclient implement interface to do CRUD operations for customs in testapiclient Tests are added Change-Id: I8a18323c2e679ab022702a607a53ad01ee60a6af Signed-off-by: thuva4 --- .../testapi-client/testapiclient/cli/scenarios.py | 99 ++++++++++++++++++++++ 1 file changed, 99 insertions(+) (limited to 'testapi/testapi-client/testapiclient/cli/scenarios.py') diff --git a/testapi/testapi-client/testapiclient/cli/scenarios.py b/testapi/testapi-client/testapiclient/cli/scenarios.py index 1e384d0..edb45c6 100644 --- a/testapi/testapi-client/testapiclient/cli/scenarios.py +++ b/testapi/testapi-client/testapiclient/cli/scenarios.py @@ -390,3 +390,102 @@ class ProjectPut(command.Command): resources_url(parsed_args.scenario_name, 'projects'), ['installer', 'version'], parsed_args), parsed_args.project) + + +class CustomCreate(command.Command): + + def get_parser(self, prog_name): + parser = super(CustomCreate, self).get_parser(prog_name) + parser.add_argument('--scenario-name', + type=str, + required=True, + help='Create custom by scenario name') + parser.add_argument('--installer', + required=True, + help='Create custom under installer name') + parser.add_argument('--version', + required=True, + help='Create custom under version name') + parser.add_argument('--project', + required=True, + help='Create custom under project name') + parser.add_argument('custom', + nargs='+', + help='Space sperated strings') + return parser + + def take_action(self, parsed_args): + return self.app.client_manager.post( + urlparse.query_by( + resources_url( + parsed_args.scenario_name, + 'customs'), + ['installer', 'version', 'project'], + parsed_args), + parsed_args.custom) + + +class CustomDelete(command.Command): + + def get_parser(self, prog_name): + parser = super(CustomDelete, self).get_parser(prog_name) + parser.add_argument('--scenario-name', + required=True, + type=str, + help='Delete custom by scenario name') + parser.add_argument('--installer', + required=True, + help='Create custom under scenario name') + parser.add_argument('--version', + required=True, + help='Create custom under scenario name') + parser.add_argument('--project', + required=True, + help='Create custom under scenario name') + parser.add_argument('name', + nargs='+', + help='Delete custom by name') + return parser + + def take_action(self, parsed_args): + return self.app.client_manager.delete( + urlparse.query_by( + resources_url( + parsed_args.scenario_name, + 'customs'), + ['installer', 'version', 'project'], + parsed_args), + parsed_args.name) + + +class CustomPut(command.Command): + + def get_parser(self, prog_name): + parser = super(CustomPut, self).get_parser(prog_name) + parser.add_argument('--scenario-name', + type=str, + required=True, + help='Update custom by scenario name') + parser.add_argument('--installer', + required=True, + help='Update custom under installer name') + parser.add_argument('--version', + required=True, + help='Update custom under version name') + parser.add_argument('--project', + required=True, + help='Update custom under project name') + parser.add_argument('custom', + nargs='+', + help='space sperated strings') + return parser + + def take_action(self, parsed_args): + return self.app.client_manager.put( + urlparse.query_by( + resources_url( + parsed_args.scenario_name, + 'customs'), + ['installer', 'version', 'project'], + parsed_args), + parsed_args.custom) -- cgit 1.2.3-korg