diff options
author | SerenaFeng <feng.xiaowei@zte.com.cn> | 2018-03-09 16:35:22 +0800 |
---|---|---|
committer | SerenaFeng <feng.xiaowei@zte.com.cn> | 2018-03-09 18:06:09 +0800 |
commit | 1a95c1e6b33d9b3efcfd92e1de64feee7e9b5c68 (patch) | |
tree | 61488ece232657c6693425eabc07ad6ca4b3af8e /testapi/testapi-client/testapiclient/utils/command.py | |
parent | cc29ae1cd41d1f403511730d5ba44dded967fb12 (diff) |
restructure testapiclient project
Change-Id: I13d24ce7b436f203a66fe14f4930e58b3ab1193c
Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'testapi/testapi-client/testapiclient/utils/command.py')
-rw-r--r-- | testapi/testapi-client/testapiclient/utils/command.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/testapi/testapi-client/testapiclient/utils/command.py b/testapi/testapi-client/testapiclient/utils/command.py new file mode 100644 index 0000000..95f1fb0 --- /dev/null +++ b/testapi/testapi-client/testapiclient/utils/command.py @@ -0,0 +1,39 @@ +from cliff import command + +from testapiclient.utils import url_parse + + +class Command(command.Command): + def get_parser(self, prog_name): + parser = super(Command, self).get_parser(prog_name) + parser.add_argument('-u', + type=str, + help='Username for authentication') + parser.add_argument('-p', + type=str, + help='Password for authentication') + + return parser + + def show(self, request, response): + print ' '.join([request, + 'success' if response.status_code < 300 + else 'failed: {}'.format(response.text)]) + + +class Lister(command.Command): + + @staticmethod + def filter_by_name(url, parsed_args): + def query_url(): + return url_parse.query_join(url, name=parsed_args.name) + + return query_url() if parsed_args.name else url + + def show(self, response): + print response.json() if response.status_code < 300 else response.text + + +class ShowOne(command.Command): + def show(self, response): + print response.json() if response.status_code < 300 else response.text |