Fix v3 volume list based on image_metadata
volume list filtered on image_metadata does not work as expected. The filtering based on image_metadata depended on non existent utility for extracting image_metadata. Fixed the issue by calling appropriate utility module for extracting image_metadata. Looks like a typo. Change-Id: I13e78277fc1afd22d044bb49b6a5ccc00904228c Closes-bug: #1657650
This commit is contained in:
		| @@ -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') | ||||
|   | ||||
| @@ -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) | ||||
|   | ||||
| @@ -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, | ||||
|     } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Vivek Agrawal
					Vivek Agrawal