summaryrefslogtreecommitdiff
path: root/keystoneclient/tests
diff options
context:
space:
mode:
authorHenry Nash <henryn@linux.vnet.ibm.com>2016-02-18 19:24:44 +0000
committerHenry Nash <henryn@linux.vnet.ibm.com>2016-02-19 11:48:27 +0000
commit0d862095656f5f19610fad61a7e19a68c083d8a8 (patch)
tree5e25daee347d1f8fdd11b263491acf9658ec449a /keystoneclient/tests
parent9097481e81f5b45310f4f5228369325e3bbc0f28 (diff)
downloadpython-keystoneclient-0d862095656f5f19610fad61a7e19a68c083d8a8.tar.gz
Support creation of domain specific roles
Add support for the domain_id attribute in the role entity. Partially Implements: blueprint domain-specific-roles Change-Id: I06af7647e15aa742609b3fe1b9b222fbeaeb5735
Diffstat (limited to 'keystoneclient/tests')
-rw-r--r--keystoneclient/tests/unit/v3/test_roles.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/keystoneclient/tests/unit/v3/test_roles.py b/keystoneclient/tests/unit/v3/test_roles.py
index 784c233..bcf2948 100644
--- a/keystoneclient/tests/unit/v3/test_roles.py
+++ b/keystoneclient/tests/unit/v3/test_roles.py
@@ -33,6 +33,32 @@ class RoleTests(utils.ClientTestCase, utils.CrudTests):
kwargs.setdefault('name', uuid.uuid4().hex)
return kwargs
+ def _new_domain_ref(self, **kwargs):
+ kwargs.setdefault('enabled', True)
+ kwargs.setdefault('name', uuid.uuid4().hex)
+ return kwargs
+
+ def test_create_with_domain_id(self):
+ ref = self.new_ref()
+ ref['domain_id'] = uuid.uuid4().hex
+ self.test_create(ref=ref)
+
+ def test_create_with_domain(self):
+ ref = self.new_ref()
+ domain_ref = self._new_domain_ref()
+ domain_ref['id'] = uuid.uuid4().hex
+ ref['domain_id'] = domain_ref['id']
+
+ self.stub_entity('POST', entity=ref, status_code=201)
+ returned = self.manager.create(name=ref['name'],
+ domain=domain_ref)
+ self.assertIsInstance(returned, self.model)
+ for attr in ref:
+ self.assertEqual(
+ getattr(returned, attr),
+ ref[attr],
+ 'Expected different %s' % attr)
+
def test_domain_role_grant(self):
user_id = uuid.uuid4().hex
domain_id = uuid.uuid4().hex