diff options
author | Jenkins <jenkins@review.openstack.org> | 2017-01-23 11:45:41 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2017-01-23 11:45:41 +0000 |
commit | 9b63d007d769d874b7e912c081661b4b3de00733 (patch) | |
tree | a73820cac87770ea5e331dbdcd157f5df7c8ebc2 | |
parent | e04a4149f296a367d82b9aa01df8a90855999784 (diff) | |
parent | f08ecd29ade3c8917f4fa317ebbd7fdefc7a09cf (diff) | |
download | python-cinderclient-9b63d007d769d874b7e912c081661b4b3de00733.tar.gz |
Merge "Fix v3 volume list based on image_metadata"
-rw-r--r-- | cinderclient/tests/unit/v3/test_shell.py | 7 | ||||
-rw-r--r-- | cinderclient/tests/unit/v3/test_volumes.py | 7 | ||||
-rw-r--r-- | cinderclient/v3/shell.py | 2 |
3 files changed, 15 insertions, 1 deletions
diff --git a/cinderclient/tests/unit/v3/test_shell.py b/cinderclient/tests/unit/v3/test_shell.py index e3b2617..dc3dd68 100644 --- a/cinderclient/tests/unit/v3/test_shell.py +++ b/cinderclient/tests/unit/v3/test_shell.py @@ -373,6 +373,13 @@ class ShellTest(utils.TestCase): self.run_command('--os-volume-api-version 3.5 message-list --marker=1') self.assert_called('GET', '/messages?marker=1') + def test_list_filter_image_metadata(self): + self.run_command('--os-volume-api-version 3.0 ' + 'list --image_metadata image_name=1234') + url = ('/volumes/detail?%s' % + parse.urlencode([('glance_metadata', {"image_name": "1234"})])) + self.assert_called('GET', url) + def test_show_message(self): self.run_command('--os-volume-api-version 3.5 message-show 1234') self.assert_called('GET', '/messages/1234') diff --git a/cinderclient/tests/unit/v3/test_volumes.py b/cinderclient/tests/unit/v3/test_volumes.py index fe27a51..4613f37 100644 --- a/cinderclient/tests/unit/v3/test_volumes.py +++ b/cinderclient/tests/unit/v3/test_volumes.py @@ -93,3 +93,10 @@ class VolumesTest(utils.TestCase): expected = ("/snapshots/detail?metadata=%s" % parse.quote_plus("{'key1': 'val1'}")) cs.assert_called('GET', expected) + + def test_list_with_image_metadata(self): + cs = fakes.FakeClient(api_versions.APIVersion('3.0')) + cs.volumes.list(search_opts={'glance_metadata': {'key1': 'val1'}}) + expected = ("/volumes/detail?glance_metadata=%s" + % parse.quote_plus("{'key1': 'val1'}")) + cs.assert_called('GET', expected) diff --git a/cinderclient/v3/shell.py b/cinderclient/v3/shell.py index d89e10c..50213a5 100644 --- a/cinderclient/v3/shell.py +++ b/cinderclient/v3/shell.py @@ -137,7 +137,7 @@ def do_list(cs, args): 'migration_status': args.migration_status, 'metadata': shell_utils.extract_metadata(args) if args.metadata else None, - 'glance_metadata': shell.utils.extract_metadata(args, + 'glance_metadata': shell_utils.extract_metadata(args, type='image_metadata') if args.image_metadata else None, } |