Merge "Fix project domain problem in v3 token client"
This commit is contained in:
commit
118f2c6a60
@ -105,10 +105,10 @@ class V3TokenClient(rest_client.RestClient):
|
|||||||
elif project_name:
|
elif project_name:
|
||||||
_project['name'] = project_name
|
_project['name'] = project_name
|
||||||
|
|
||||||
if project_domain_id is not None:
|
if project_domain_id is not None:
|
||||||
_project['domain'] = {'id': project_domain_id}
|
_project['domain'] = {'id': project_domain_id}
|
||||||
elif project_domain_name is not None:
|
elif project_domain_name is not None:
|
||||||
_project['domain'] = {'name': project_domain_name}
|
_project['domain'] = {'name': project_domain_name}
|
||||||
|
|
||||||
creds['auth']['scope'] = dict(project=_project)
|
creds['auth']['scope'] = dict(project=_project)
|
||||||
elif domain_id:
|
elif domain_id:
|
||||||
|
@ -57,6 +57,44 @@ class TestTokenClientV2(base.TestCase):
|
|||||||
post_mock.mock.assert_called_once_with('fake_url/auth/tokens',
|
post_mock.mock.assert_called_once_with('fake_url/auth/tokens',
|
||||||
body=req_dict)
|
body=req_dict)
|
||||||
|
|
||||||
|
def test_auth_with_project_id_and_domain_id(self):
|
||||||
|
token_client_v3 = token_client.V3TokenClient('fake_url')
|
||||||
|
post_mock = self.useFixture(mockpatch.PatchObject(
|
||||||
|
token_client_v3, 'post', return_value=self.fake_201_http.request(
|
||||||
|
'fake_url', body={'access': {'token': 'fake_token'}})))
|
||||||
|
resp = token_client_v3.auth(
|
||||||
|
username='fake_user', password='fake_pass',
|
||||||
|
project_id='fcac2a055a294e4c82d0a9c21c620eb4',
|
||||||
|
user_domain_id='14f4a9a99973404d8c20ba1d2af163ff',
|
||||||
|
project_domain_id='291f63ae9ac54ee292ca09e5f72d9676')
|
||||||
|
self.assertIsInstance(resp, rest_client.ResponseBody)
|
||||||
|
req_dict = json.dumps({
|
||||||
|
'auth': {
|
||||||
|
'identity': {
|
||||||
|
'methods': ['password'],
|
||||||
|
'password': {
|
||||||
|
'user': {
|
||||||
|
'name': 'fake_user',
|
||||||
|
'password': 'fake_pass',
|
||||||
|
'domain': {
|
||||||
|
'id': '14f4a9a99973404d8c20ba1d2af163ff'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'scope': {
|
||||||
|
'project': {
|
||||||
|
'id': 'fcac2a055a294e4c82d0a9c21c620eb4',
|
||||||
|
'domain': {
|
||||||
|
'id': '291f63ae9ac54ee292ca09e5f72d9676'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, sort_keys=True)
|
||||||
|
post_mock.mock.assert_called_once_with('fake_url/auth/tokens',
|
||||||
|
body=req_dict)
|
||||||
|
|
||||||
def test_auth_with_tenant(self):
|
def test_auth_with_tenant(self):
|
||||||
token_client_v2 = token_client.V3TokenClient('fake_url')
|
token_client_v2 = token_client.V3TokenClient('fake_url')
|
||||||
post_mock = self.useFixture(mockpatch.PatchObject(
|
post_mock = self.useFixture(mockpatch.PatchObject(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user