Define context.roles with base class

In f383bd2973c58c5272504603e4f9dddd55c5bb68, oslo.context (2.2.0)
added roles support in the context itself. This passes roles to
super()__init__.

Depends-On: I1227b9d23b5ce7c9339023c6637458726f8794f3
Change-Id: I51be1a2af2a0fe7df0604fc056e45b57f3ee6919
This commit is contained in:
Ronald Bradford 2016-02-26 15:19:36 +00:00
parent 68e7ae469d
commit 05f39c19a1
2 changed files with 14 additions and 3 deletions

View File

@ -76,8 +76,8 @@ class RequestContext(context.RequestContext):
project_domain=project_domain,
is_admin=is_admin,
request_id=request_id,
overwrite=overwrite)
self.roles = roles or []
overwrite=overwrite,
roles=roles)
self.project_name = project_name
self.read_deleted = read_deleted
self.remote_address = remote_address
@ -127,7 +127,6 @@ class RequestContext(context.RequestContext):
result['project_name'] = self.project_name
result['domain'] = self.domain
result['read_deleted'] = self.read_deleted
result['roles'] = self.roles
result['remote_address'] = self.remote_address
result['timestamp'] = self.timestamp.isoformat()
result['quota_class'] = self.quota_class

View File

@ -134,3 +134,15 @@ class ContextTestCase(test.TestCase):
mock_conf.cinder_internal_tenant_user_id = user_id
ctx = context.get_internal_tenant_context()
self.assertIsNone(ctx)
def test_request_context_no_roles(self):
ctxt = context.RequestContext('111',
'222')
self.assertEqual([], ctxt.roles)
def test_request_context_with_roles(self):
roles = ['alpha', 'beta']
ctxt = context.RequestContext('111',
'222',
roles=roles)
self.assertEqual(roles, ctxt.roles)