Merge "Fixed command list"
This commit is contained in:
commit
586a038afd
@ -19,6 +19,7 @@ import six
|
||||
import sys
|
||||
|
||||
from openstackclient.common import command
|
||||
from openstackclient.common import utils
|
||||
|
||||
|
||||
class ListCommand(command.Lister):
|
||||
@ -29,9 +30,24 @@ class ListCommand(command.Lister):
|
||||
def take_action(self, parsed_args):
|
||||
cm = self.app.command_manager
|
||||
groups = cm.get_command_groups()
|
||||
|
||||
groups = sorted(groups)
|
||||
columns = ('Command Group', 'Commands')
|
||||
return (columns, ((c, cm.get_command_names(group=c)) for c in groups))
|
||||
|
||||
commands = []
|
||||
for group in groups:
|
||||
command_names = cm.get_command_names(group)
|
||||
command_names = sorted(command_names)
|
||||
|
||||
if command_names != []:
|
||||
|
||||
# TODO(bapalm): Fix this when cliff properly supports
|
||||
# handling the detection rather than using the hard-code below.
|
||||
if parsed_args.formatter == 'table':
|
||||
command_names = utils.format_list(command_names, "\n")
|
||||
|
||||
commands.append((group, command_names))
|
||||
|
||||
return (columns, commands)
|
||||
|
||||
|
||||
class ListModule(command.ShowOne):
|
||||
|
@ -48,10 +48,11 @@ class TestCommandList(utils.TestCommand):
|
||||
super(TestCommandList, self).setUp()
|
||||
|
||||
self.app.command_manager = mock.Mock()
|
||||
self.app.command_manager.get_command_groups.return_value = ['test']
|
||||
self.app.command_manager.get_command_groups.return_value = [
|
||||
'openstack.common'
|
||||
]
|
||||
self.app.command_manager.get_command_names.return_value = [
|
||||
'one',
|
||||
'cmd two',
|
||||
'limits show\nextension list'
|
||||
]
|
||||
|
||||
# Get the command object to test
|
||||
@ -67,12 +68,15 @@ class TestCommandList(utils.TestCommand):
|
||||
# containing the data to be listed.
|
||||
columns, data = self.cmd.take_action(parsed_args)
|
||||
|
||||
# TODO(bapalm): Adjust this when cliff properly supports
|
||||
# handling the detection rather than using the hard-code below.
|
||||
collist = ('Command Group', 'Commands')
|
||||
self.assertEqual(collist, columns)
|
||||
datalist = ((
|
||||
'test',
|
||||
['one', 'cmd two'],
|
||||
'openstack.common',
|
||||
'limits show\nextension list'
|
||||
),)
|
||||
|
||||
self.assertEqual(datalist, tuple(data))
|
||||
|
||||
|
||||
|
5
releasenotes/notes/bug-1545609-bdc1efc17214463b.yaml
Normal file
5
releasenotes/notes/bug-1545609-bdc1efc17214463b.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
fixes:
|
||||
- |
|
||||
Fixed ``openstack command list`` to display properly
|
||||
[Bug `1545609 <https://bugs.launchpad.net/python-openstackclient/+bug/1545609>`_]
|
Loading…
Reference in New Issue
Block a user