Merge "Add test for precedence rules"
This commit is contained in:
commit
1d18b9193b
@ -373,6 +373,59 @@ class TestConfigArgparse(base.TestCase):
|
|||||||
self.assertEqual(cc.region_name, 'region2')
|
self.assertEqual(cc.region_name, 'region2')
|
||||||
self.assertEqual(cc.snack_type, 'cookie')
|
self.assertEqual(cc.snack_type, 'cookie')
|
||||||
|
|
||||||
|
def test_get_one_cloud_precedence(self):
|
||||||
|
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
|
||||||
|
vendor_files=[self.vendor_yaml])
|
||||||
|
|
||||||
|
kwargs = {
|
||||||
|
'auth': {
|
||||||
|
'username': 'testuser',
|
||||||
|
'password': 'authpass',
|
||||||
|
'project-id': 'testproject',
|
||||||
|
'auth_url': 'http://example.com/v2',
|
||||||
|
},
|
||||||
|
'region_name': 'kwarg_region',
|
||||||
|
'password': 'ansible_password',
|
||||||
|
'arbitrary': 'value',
|
||||||
|
}
|
||||||
|
|
||||||
|
args = dict(
|
||||||
|
auth_url='http://example.com/v2',
|
||||||
|
username='user',
|
||||||
|
password='argpass',
|
||||||
|
project_name='project',
|
||||||
|
region_name='region2',
|
||||||
|
snack_type='cookie',
|
||||||
|
)
|
||||||
|
|
||||||
|
options = argparse.Namespace(**args)
|
||||||
|
cc = c.get_one_cloud(
|
||||||
|
argparse=options, **kwargs)
|
||||||
|
self.assertEqual(cc.region_name, 'region2')
|
||||||
|
self.assertEqual(cc.auth['password'], 'argpass')
|
||||||
|
self.assertEqual(cc.snack_type, 'cookie')
|
||||||
|
|
||||||
|
def test_get_one_cloud_precedence_no_argparse(self):
|
||||||
|
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
|
||||||
|
vendor_files=[self.vendor_yaml])
|
||||||
|
|
||||||
|
kwargs = {
|
||||||
|
'auth': {
|
||||||
|
'username': 'testuser',
|
||||||
|
'password': 'authpass',
|
||||||
|
'project-id': 'testproject',
|
||||||
|
'auth_url': 'http://example.com/v2',
|
||||||
|
},
|
||||||
|
'region_name': 'kwarg_region',
|
||||||
|
'password': 'ansible_password',
|
||||||
|
'arbitrary': 'value',
|
||||||
|
}
|
||||||
|
|
||||||
|
cc = c.get_one_cloud(**kwargs)
|
||||||
|
self.assertEqual(cc.region_name, 'kwarg_region')
|
||||||
|
self.assertEqual(cc.auth['password'], 'authpass')
|
||||||
|
self.assertIsNone(cc.password)
|
||||||
|
|
||||||
def test_get_one_cloud_just_argparse(self):
|
def test_get_one_cloud_just_argparse(self):
|
||||||
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
|
c = config.OpenStackConfig(config_files=[self.cloud_yaml],
|
||||||
vendor_files=[self.vendor_yaml])
|
vendor_files=[self.vendor_yaml])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user