Parse blob dict upload output right
Change-Id: Ie9aca92820d35576862a5580fc4de8b3237cba03
This commit is contained in:
parent
6ed07b9320
commit
68ed374835
|
@ -120,7 +120,11 @@ class UploadBlob(command.ShowOne):
|
|||
data = client.artifacts.get(af_id, type_name=parsed_args.type_name)
|
||||
|
||||
data_to_display = {'blob_property': parsed_args.blob_property}
|
||||
data_to_display.update(data[parsed_args.blob_property])
|
||||
if '/' in parsed_args.blob_property:
|
||||
dict_name, __, key_name = parsed_args.blob_property.partition('/')
|
||||
data_to_display.update(data[dict_name][key_name])
|
||||
else:
|
||||
data_to_display.update(data[parsed_args.blob_property])
|
||||
return self.dict2columns(data_to_display)
|
||||
|
||||
|
||||
|
@ -272,5 +276,9 @@ class AddLocation(command.ShowOne):
|
|||
type_name=parsed_args.type_name)
|
||||
|
||||
data_to_display = {'blob_property': parsed_args.blob_property}
|
||||
data_to_display.update(data[parsed_args.blob_property])
|
||||
if '/' in parsed_args.blob_property:
|
||||
dict_name, __, key_name = parsed_args.blob_property.partition('/')
|
||||
data_to_display.update(data[dict_name][key_name])
|
||||
else:
|
||||
data_to_display.update(data[parsed_args.blob_property])
|
||||
return self.dict2columns(data_to_display)
|
||||
|
|
|
@ -184,6 +184,30 @@ class TestUploadBlob(TestBlobs):
|
|||
self.assertEqual(self.COLUMNS, columns)
|
||||
self.assertEqual(exp_data, data)
|
||||
|
||||
def test_upload_blob_dict(self):
|
||||
exp_data = ('nested_templates/blob', 'application/octet-stream',
|
||||
False,
|
||||
'35d83e8eedfbdb87ff97d1f2761f8ebf',
|
||||
'942854360eeec1335537702399c5aed940401602',
|
||||
'd8a7834fc6652f316322d80196f6dcf2'
|
||||
'94417030e37c15412e4deb7a67a367dd',
|
||||
594, 'active', 'fake_url')
|
||||
arglist = ['images',
|
||||
'fc15c365-d4f9-4b8b-a090-d9e230f1f6ba',
|
||||
'--file', '/path/to/file',
|
||||
'--blob-property', 'nested_templates/blob']
|
||||
verify = [('type_name', 'images')]
|
||||
|
||||
parsed_args = self.check_parser(self.cmd, arglist, verify)
|
||||
self.app.client_manager.artifact.artifacts.get = \
|
||||
lambda *args, **kwargs: {
|
||||
'nested_templates': {'blob': fakes.blob_fixture}
|
||||
}
|
||||
columns, data = self.cmd.take_action(parsed_args)
|
||||
self.app.client_manager.artifact.artifacts.get = fakes.mock_get
|
||||
self.assertEqual(self.COLUMNS, columns)
|
||||
self.assertEqual(exp_data, data)
|
||||
|
||||
|
||||
class TestDownloadBlob(TestBlobs):
|
||||
def setUp(self):
|
||||
|
@ -262,3 +286,23 @@ class TestAddLocation(TestBlobs):
|
|||
parsed_args = self.check_parser(self.cmd, arglist, verify)
|
||||
columns, data = self.cmd.take_action(parsed_args)
|
||||
self.assertEqual(self.COLUMNS, columns)
|
||||
|
||||
def test_add_dict_location(self):
|
||||
arglist = ['images',
|
||||
'fc15c365-d4f9-4b8b-a090-d9e230f1f6ba', '--id',
|
||||
'--blob-property', 'nested_templates/blob',
|
||||
'--url', 'fake_url',
|
||||
'--md5', "35d83e8eedfbdb87ff97d1f2761f8ebf",
|
||||
'--sha1', "942854360eeec1335537702399c5aed940401602",
|
||||
'--sha256', "d8a7834fc6652f316322d80196f6dcf2"
|
||||
"94417030e37c15412e4deb7a67a367dd"]
|
||||
verify = [('type_name', 'images'), ('url', 'fake_url')]
|
||||
|
||||
parsed_args = self.check_parser(self.cmd, arglist, verify)
|
||||
self.app.client_manager.artifact.artifacts.get = \
|
||||
lambda *args, **kwargs: {
|
||||
'nested_templates': {'blob': fakes.blob_fixture}
|
||||
}
|
||||
columns, data = self.cmd.take_action(parsed_args)
|
||||
self.app.client_manager.artifact.artifacts.get = fakes.mock_get
|
||||
self.assertEqual(self.COLUMNS, columns)
|
||||
|
|
Loading…
Reference in New Issue