Merge "keystoneclient requires an email address when creating a user"
This commit is contained in:
@@ -76,6 +76,40 @@ class UserTests(utils.TestCase):
|
|||||||
self.assertEqual(user.email, "test@example.com")
|
self.assertEqual(user.email, "test@example.com")
|
||||||
self.assertRequestBodyIs(json=req_body)
|
self.assertRequestBodyIs(json=req_body)
|
||||||
|
|
||||||
|
@httpretty.activate
|
||||||
|
def test_create_user_without_email(self):
|
||||||
|
req_body = {
|
||||||
|
"user": {
|
||||||
|
"name": "gabriel",
|
||||||
|
"password": "test",
|
||||||
|
"tenantId": 2,
|
||||||
|
"enabled": True,
|
||||||
|
"email": None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resp_body = {
|
||||||
|
"user": {
|
||||||
|
"name": "gabriel",
|
||||||
|
"enabled": True,
|
||||||
|
"tenantId": 2,
|
||||||
|
"id": 3,
|
||||||
|
"password": "test",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
self.stub_url(httpretty.POST, ['users'], json=resp_body)
|
||||||
|
|
||||||
|
user = self.client.users.create(
|
||||||
|
req_body['user']['name'],
|
||||||
|
req_body['user']['password'],
|
||||||
|
tenant_id=req_body['user']['tenantId'],
|
||||||
|
enabled=req_body['user']['enabled'])
|
||||||
|
self.assertTrue(isinstance(user, users.User))
|
||||||
|
self.assertEqual(user.id, 3)
|
||||||
|
self.assertEqual(user.name, "gabriel")
|
||||||
|
self.assertRequestBodyIs(json=req_body)
|
||||||
|
|
||||||
@httpretty.activate
|
@httpretty.activate
|
||||||
def test_delete(self):
|
def test_delete(self):
|
||||||
self.stub_url(httpretty.DELETE, ['users', '1'], status=204)
|
self.stub_url(httpretty.DELETE, ['users', '1'], status=204)
|
||||||
|
@@ -86,9 +86,8 @@ class UserManager(base.ManagerWithFind):
|
|||||||
return self._update("/users/%s/OS-KSADM/tenant" % base.getid(user),
|
return self._update("/users/%s/OS-KSADM/tenant" % base.getid(user),
|
||||||
params, "user")
|
params, "user")
|
||||||
|
|
||||||
def create(self, name, password, email, tenant_id=None, enabled=True):
|
def create(self, name, password, email=None, tenant_id=None, enabled=True):
|
||||||
"""Create a user."""
|
"""Create a user."""
|
||||||
# FIXME(ja): email should be optional, keystone currently requires it
|
|
||||||
params = {"user": {"name": name,
|
params = {"user": {"name": name,
|
||||||
"password": password,
|
"password": password,
|
||||||
"tenantId": tenant_id,
|
"tenantId": tenant_id,
|
||||||
|
Reference in New Issue
Block a user