summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2023-03-29 14:31:25 +0000
committerGerrit Code Review <review@openstack.org>2023-03-29 14:31:25 +0000
commit55f2819cefe83aeb86c2a6c95e8b949ebafc5fd9 (patch)
tree159df5f886b4ae12498018bc7a5f7b94f8bb7bcf
parent4e5e3cff5d7b0296f16b39ce203a443b0c0c2a45 (diff)
parentf1cf3a10b5f0fcf13e57b8df7e139db2b0ebb760 (diff)
downloadpython-openstackclient-55f2819cefe83aeb86c2a6c95e8b949ebafc5fd9.tar.gz
Merge "Show Network QoS rules one per line"
-rw-r--r--openstackclient/network/v2/network_qos_policy.py13
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_qos_policy.py2
2 files changed, 13 insertions, 2 deletions
diff --git a/openstackclient/network/v2/network_qos_policy.py b/openstackclient/network/v2/network_qos_policy.py
index d77e5db9..29967d7d 100644
--- a/openstackclient/network/v2/network_qos_policy.py
+++ b/openstackclient/network/v2/network_qos_policy.py
@@ -15,6 +15,7 @@
import logging
+from cliff import columns as cliff_columns
from osc_lib.command import command
from osc_lib import exceptions
from osc_lib import utils
@@ -26,6 +27,16 @@ from openstackclient.network import common
LOG = logging.getLogger(__name__)
+class RulesColumn(cliff_columns.FormattableColumn):
+ def human_readable(self):
+ return '\n'.join(str(v) for v in self._value)
+
+
+_formatters = {
+ 'rules': RulesColumn,
+}
+
+
def _get_columns(item):
column_map = {
'is_shared': 'shared',
@@ -287,5 +298,5 @@ class ShowNetworkQosPolicy(command.ShowOne):
obj = client.find_qos_policy(parsed_args.policy,
ignore_missing=False)
display_columns, columns = _get_columns(obj)
- data = utils.get_item_properties(obj, columns)
+ data = utils.get_item_properties(obj, columns, formatters=_formatters)
return (display_columns, data)
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
index af4cb3fb..ca21ccf7 100644
--- a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
+++ b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
@@ -432,7 +432,7 @@ class TestShowNetworkQosPolicy(TestQosPolicy):
_qos_policy.is_default,
_qos_policy.name,
_qos_policy.project_id,
- _qos_policy.rules,
+ network_qos_policy.RulesColumn(_qos_policy.rules),
_qos_policy.shared,
)