Merge "Add a RequestContext.from_dict method"
This commit is contained in:
commit
d05cf6042a
@ -77,6 +77,21 @@ class RequestContext(object):
|
||||
'instance_uuid': self.instance_uuid,
|
||||
'user_identity': user_idt}
|
||||
|
||||
@classmethod
|
||||
def from_dict(cls, ctx):
|
||||
return cls(
|
||||
auth_token=ctx.get("auth_token"),
|
||||
user=ctx.get("user"),
|
||||
tenant=ctx.get("tenant"),
|
||||
domain=ctx.get("domain"),
|
||||
user_domain=ctx.get("user_domain"),
|
||||
project_domain=ctx.get("project_domain"),
|
||||
is_admin=ctx.get("is_admin", False),
|
||||
read_only=ctx.get("read_only", False),
|
||||
show_deleted=ctx.get("show_deleted", False),
|
||||
request_id=ctx.get("request_id"),
|
||||
instance_uuid=ctx.get("instance_uuid"))
|
||||
|
||||
|
||||
def get_admin_context(show_deleted=False):
|
||||
context = RequestContext(None,
|
||||
|
@ -27,3 +27,31 @@ class ContextTest(test_base.BaseTestCase):
|
||||
def test_admin_context_show_deleted_flag_default(self):
|
||||
ctx = context.get_admin_context()
|
||||
self.assertFalse(ctx.show_deleted)
|
||||
|
||||
def test_from_dict(self):
|
||||
dct = {
|
||||
"auth_token": "token1",
|
||||
"user": "user1",
|
||||
"tenant": "tenant1",
|
||||
"domain": "domain1",
|
||||
"user_domain": "user_domain1",
|
||||
"project_domain": "project_domain1",
|
||||
"is_admin": True,
|
||||
"read_only": True,
|
||||
"show_deleted": True,
|
||||
"request_id": "request1",
|
||||
"instance_uuid": "instance1",
|
||||
"extra_data": "foo"
|
||||
}
|
||||
ctx = context.RequestContext.from_dict(dct)
|
||||
self.assertEqual("token1", ctx.auth_token)
|
||||
self.assertEqual("user1", ctx.user)
|
||||
self.assertEqual("tenant1", ctx.tenant)
|
||||
self.assertEqual("domain1", ctx.domain)
|
||||
self.assertEqual("user_domain1", ctx.user_domain)
|
||||
self.assertEqual("project_domain1", ctx.project_domain)
|
||||
self.assertTrue(ctx.is_admin)
|
||||
self.assertTrue(ctx.read_only)
|
||||
self.assertTrue(ctx.show_deleted)
|
||||
self.assertEqual("request1", ctx.request_id)
|
||||
self.assertEqual("instance1", ctx.instance_uuid)
|
||||
|
Loading…
x
Reference in New Issue
Block a user