Do not iterate action.choices if it is none
Do not iterate action.choices in the method add_arguments in the class OpenStackHelpFormatter if action.choices is not iterable because it is none. Change-Id: Ie7110adb798326e5856fddfb6a7365c663b84998 Closes-Bug: #1372152
This commit is contained in:
@@ -443,6 +443,8 @@ class OpenStackHelpFormatter(argparse.HelpFormatter):
|
||||
|
||||
def add_arguments(self, actions):
|
||||
for action in filter(lambda x: not x.option_strings, actions):
|
||||
if not action.choices:
|
||||
continue
|
||||
for choice in action.choices:
|
||||
length = len(choice) + self.INDENT_BEFORE_ARGUMENTS
|
||||
if(length > self._max_help_position and
|
||||
|
@@ -115,6 +115,12 @@ class ShellTest(utils.TestCase):
|
||||
self.assertThat(help_text,
|
||||
matchers.MatchesRegex(required))
|
||||
|
||||
def test_help_command_with_no_action_choices(self):
|
||||
required = 'usage: keystone user-update'
|
||||
help_text = self.shell('help user-update')
|
||||
self.assertThat(help_text,
|
||||
matchers.MatchesRegex(required))
|
||||
|
||||
def test_auth_no_credentials(self):
|
||||
with testtools.ExpectedException(
|
||||
exceptions.CommandError, 'Expecting'):
|
||||
|
Reference in New Issue
Block a user