Fix "heat output-show -F json" output format
So that it matches the equivalent OSC command's output. Also change the default output-show format to 'raw' to maintain current behavior. Closes-Bug: #1560087 Change-Id: Ia03b1633565881b4b4a7f95e7b0c5df472487f62
This commit is contained in:
parent
9a255f593c
commit
272c32f7ec
|
@ -2446,8 +2446,18 @@ class ShellTestUserPass(ShellBase):
|
|||
|
||||
self._output_fake_response('output2')
|
||||
list_text = self.shell('output-show -F json teststack/1 output2')
|
||||
self.assertEqual('[\n "output", \n "value", \n "2"\n]\n',
|
||||
list_text)
|
||||
required = [
|
||||
'{',
|
||||
'"output_key": "output2"',
|
||||
'"description": "test output 2"',
|
||||
'"output_value": \[',
|
||||
'"output"',
|
||||
'"value"',
|
||||
'"2"',
|
||||
'}'
|
||||
]
|
||||
for r in required:
|
||||
self.assertRegex(list_text, r)
|
||||
|
||||
def test_output_show_output2_json_with_detail(self):
|
||||
self.register_keystone_auth_fixture()
|
||||
|
@ -2471,7 +2481,7 @@ class ShellTestUserPass(ShellBase):
|
|||
|
||||
self._output_fake_response('output_uni')
|
||||
list_text = self.shell('output-show teststack/1 output_uni')
|
||||
self.assertEqual(u'"test\u2665"\n', list_text)
|
||||
self.assertEqual(u'test\u2665\n', list_text)
|
||||
|
||||
def test_output_show_error(self):
|
||||
self.register_keystone_auth_fixture()
|
||||
|
|
|
@ -728,7 +728,7 @@ def do_output_list(hc, args):
|
|||
help=_('Name of an output to display.'))
|
||||
@utils.arg('-F', '--format', metavar='<FORMAT>',
|
||||
help=_('The output value format, one of: json, raw.'),
|
||||
default='json')
|
||||
default='raw')
|
||||
@utils.arg('-a', '--all', default=False, action='store_true',
|
||||
help=_('Display all stack outputs.'))
|
||||
@utils.arg('--with-detail', default=False, action="store_true",
|
||||
|
@ -771,11 +771,11 @@ def do_output_show(hc, args):
|
|||
}
|
||||
utils.print_dict(output['output'], formatters=formatters)
|
||||
else:
|
||||
if (args.format == 'json'
|
||||
or isinstance(output['output']['output_value'], dict)
|
||||
or isinstance(output['output']['output_value'], list)):
|
||||
print(
|
||||
utils.json_formatter(output['output']['output_value']))
|
||||
if args.format == 'json':
|
||||
print(utils.json_formatter(output['output']))
|
||||
elif (isinstance(output['output']['output_value'], dict)
|
||||
or isinstance(output['output']['output_value'], list)):
|
||||
print(utils.json_formatter(output['output']['output_value']))
|
||||
else:
|
||||
print(output['output']['output_value'])
|
||||
|
||||
|
|
Loading…
Reference in New Issue