summaryrefslogtreecommitdiffstats
path: root/testapi/testapi-client/testapiclient/cli
diff options
context:
space:
mode:
authorthuva4 <tharma.thuva@gmail.com>2018-03-23 12:20:37 +0530
committerthuva4 <tharma.thuva@gmail.com>2018-03-23 12:29:36 +0530
commitbb4c8903e1a72a925f594207bc454d7b8a33f17e (patch)
tree5165e0d60688320b2dd1779228c77fda0db86671 /testapi/testapi-client/testapiclient/cli
parente5e56ebd95f24b337ec2b7140bb477c749459573 (diff)
CRUD operations for scenario versions in
testapiclient Test are added Change-Id: I8be5c04f4b6baed47dbf6d229c32eff5a47a8558 Signed-off-by: thuva4 <tharma.thuva@gmail.com>
Diffstat (limited to 'testapi/testapi-client/testapiclient/cli')
-rw-r--r--testapi/testapi-client/testapiclient/cli/scenarios.py107
1 files changed, 107 insertions, 0 deletions
diff --git a/testapi/testapi-client/testapiclient/cli/scenarios.py b/testapi/testapi-client/testapiclient/cli/scenarios.py
index 3f70772..cb8f1f3 100644
--- a/testapi/testapi-client/testapiclient/cli/scenarios.py
+++ b/testapi/testapi-client/testapiclient/cli/scenarios.py
@@ -194,3 +194,110 @@ class InstallerPut(command.Command):
resources_url(
parsed_args.scenario_name,
'installers'), parsed_args.installer)
+
+
+class VersionCreate(command.Command):
+
+ def get_parser(self, prog_name):
+ parser = super(VersionCreate, self).get_parser(prog_name)
+ parser.add_argument('--scenario-name',
+ required=True,
+ help='Create version under scenario name')
+ parser.add_argument('--installer',
+ required=True,
+ help='Create version under scenario name')
+ parser.add_argument('version',
+ type=json.loads,
+ help='version create request format :\n'
+ '\'[{"owner":(string),'
+ '"version": (string),'
+ '"projects": (array[ScenarioProject])'
+ '}]\',\n')
+ return parser
+
+ def take_action(self, parsed_args):
+ return self.app.client_manager.post(
+ urlparse.query_by(
+ resources_url(parsed_args.scenario_name, 'versions'),
+ 'installer',
+ parsed_args), parsed_args.version)
+
+
+class VersionDelete(command.Command):
+
+ def get_parser(self, prog_name):
+ parser = super(VersionDelete, self).get_parser(prog_name)
+ parser.add_argument('--scenario-name',
+ required=True,
+ type=str,
+ help='Delete version by scenario name')
+ parser.add_argument('--installer',
+ required=True,
+ help='Create version under scenario name')
+ parser.add_argument('name',
+ nargs='+',
+ help='Delete version 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, 'versions'),
+ 'installer',
+ parsed_args), parsed_args.name)
+
+
+class VersionPut(command.Command):
+
+ def get_parser(self, prog_name):
+ parser = super(VersionPut, self).get_parser(prog_name)
+ parser.add_argument('--scenario-name',
+ type=str,
+ required=True,
+ help='Update installer by scenario name')
+ parser.add_argument('--installer',
+ required=True,
+ help='Update version under installer name')
+ parser.add_argument('version',
+ type=json.loads,
+ help='version update request format :\n'
+ '\'[{"owner":(string),'
+ '"version": (string),'
+ '"projects": (array[ScenarioProject])'
+ '}]\',\n')
+ return parser
+
+ def take_action(self, parsed_args):
+ return self.app.client_manager.put(
+ urlparse.query_by(
+ resources_url(parsed_args.scenario_name, 'versions'),
+ 'installer',
+ parsed_args), parsed_args.version)
+
+
+class VersionOwnerPut(command.Command):
+
+ def get_parser(self, prog_name):
+ parser = super(VersionOwnerPut, self).get_parser(prog_name)
+ parser.add_argument('--scenario-name',
+ type=str,
+ required=True,
+ help='Update version by scenario name')
+ parser.add_argument('--installer',
+ required=True,
+ help='Update version under scenario name')
+ parser.add_argument('--version',
+ required=True,
+ help='Update version under scenario name')
+ parser.add_argument('owner',
+ type=json.loads,
+ help='Intaller create request format :\n'
+ '\'{"owner": ""}\',\n')
+ return parser
+
+ def take_action(self, parsed_args):
+ return self.app.client_manager.put(
+ urlparse.query_by(
+ resources_url(parsed_args.scenario_name, 'owner'),
+ ['installer', 'version'],
+ parsed_args), parsed_args.owner)