 46b9e429a2
			
		
	
	46b9e429a2
	
	
	
		
			
			1.As mentioned in [1], we should avoid using six.iteritems to achieve iterators. We can use dict.items instead, as it will return iterators in PY3 as well. And dict.items/keys will more readable. 2.In py2, the performance about list should be negligible, see the link [2]. [1] https://wiki.openstack.org/wiki/Python3 [2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html Change-Id: I18a6890935ebdbb589269379f21a0dd47d07eb3a
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # Licensed under the Apache License, Version 2.0 (the "License"); you may
 | |
| # not use this file except in compliance with the License. You may obtain
 | |
| # a copy of the License at
 | |
| #
 | |
| #      http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 | |
| # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 | |
| # License for the specific language governing permissions and limitations
 | |
| # under the License.
 | |
| 
 | |
| import uuid
 | |
| 
 | |
| 
 | |
| from keystoneclient.tests.unit.auth import utils
 | |
| 
 | |
| 
 | |
| class TestOtherLoading(utils.TestCase):
 | |
| 
 | |
|     def test_loading_getter(self):
 | |
| 
 | |
|         called_opts = []
 | |
| 
 | |
|         vals = {'a-int': 44,
 | |
|                 'a-bool': False,
 | |
|                 'a-float': 99.99,
 | |
|                 'a-str': 'value'}
 | |
| 
 | |
|         val = uuid.uuid4().hex
 | |
| 
 | |
|         def _getter(opt):
 | |
|             called_opts.append(opt.name)
 | |
|             # return str because oslo.config should convert them back
 | |
|             return str(vals[opt.name])
 | |
| 
 | |
|         p = utils.MockPlugin.load_from_options_getter(_getter, other=val)
 | |
| 
 | |
|         self.assertEqual(set(vals), set(called_opts))
 | |
| 
 | |
|         for k, v in vals.items():
 | |
|             # replace - to _ because it's the dest used to create kwargs
 | |
|             self.assertEqual(v, p[k.replace('-', '_')])
 | |
| 
 | |
|         # check that additional kwargs get passed through
 | |
|         self.assertEqual(val, p['other'])
 |