diff options
author | SerenaFeng <feng.xiaowei@zte.com.cn> | 2018-03-13 11:33:27 +0800 |
---|---|---|
committer | SerenaFeng <feng.xiaowei@zte.com.cn> | 2018-03-13 11:33:27 +0800 |
commit | 010060d932e236c7eb6802d696c68be8ac0d91ec (patch) | |
tree | e78a48e1ebe57459f690bf94400438ec48bb5288 /testapi/testapi-client/testapiclient/utils | |
parent | 12b7a2b54f4e3c36d49dec2b2620826aa7029a3e (diff) |
format URLs
1. unify URL query
2. unify URL format
Change-Id: I4bdf13067c4f726df42a8e34b4365fed4f58924e
Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'testapi/testapi-client/testapiclient/utils')
-rw-r--r-- | testapi/testapi-client/testapiclient/utils/command.py | 8 | ||||
-rw-r--r-- | testapi/testapi-client/testapiclient/utils/url_parse.py | 18 |
2 files changed, 18 insertions, 8 deletions
diff --git a/testapi/testapi-client/testapiclient/utils/command.py b/testapi/testapi-client/testapiclient/utils/command.py index c99a3f3..9614acf 100644 --- a/testapi/testapi-client/testapiclient/utils/command.py +++ b/testapi/testapi-client/testapiclient/utils/command.py @@ -7,7 +7,6 @@ from cliff import show import six from testapiclient import utils -from testapiclient.utils import url_parse class CommandMeta(abc.ABCMeta): @@ -39,13 +38,6 @@ class Command(command.Command): class Lister(Command, lister.Lister): @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 - - @staticmethod def format_output(columns, data): return (columns, (utils.get_item_properties(s, columns) for s in data)) diff --git a/testapi/testapi-client/testapiclient/utils/url_parse.py b/testapi/testapi-client/testapiclient/utils/url_parse.py index 08f7a63..fbc503a 100644 --- a/testapi/testapi-client/testapiclient/utils/url_parse.py +++ b/testapi/testapi-client/testapiclient/utils/url_parse.py @@ -20,3 +20,21 @@ def query_join(base, **queries): def resource_join(url): testapi_url = os.environ.get('testapi_url') return path_join(testapi_url, url) + + +def get_queries(queries, parsed_args): + if not isinstance(queries, list): + queries = [queries] + + return {query: getattr(parsed_args, query) + for query in queries + if hasattr(parsed_args, query)} + + +def query_by(base, queries, parsed_args): + return query_join(base, + **get_queries(queries, parsed_args)) + + +def url_format(base, parsed_args): + return base.format(**(parsed_args.__dict__)) |