Keystoneclient create user API should have optional password.
Password is optional in Keystone service. The create user API in keystoneclient should have password None as default value. Change-Id: Ic72867c9b86ca65e3237786e35bcb5bd44f5f053 Closes-Bug: #1273988
This commit is contained in:
@@ -116,6 +116,39 @@ class UserTests(utils.TestCase):
|
||||
self.assertEqual(user.name, "gabriel")
|
||||
self.assertRequestBodyIs(json=req_body)
|
||||
|
||||
@httpretty.activate
|
||||
def test_create_user_without_password(self):
|
||||
user_name = 'test'
|
||||
user_id = uuid.uuid4().hex
|
||||
tenant_id = uuid.uuid4().hex
|
||||
user_enabled = True
|
||||
req_body = {
|
||||
'user': {
|
||||
'name': user_name,
|
||||
'password': None,
|
||||
'tenantId': tenant_id,
|
||||
'enabled': user_enabled,
|
||||
'email': None,
|
||||
}
|
||||
}
|
||||
resp_body = {
|
||||
'user': {
|
||||
'name': user_name,
|
||||
'enabled': user_enabled,
|
||||
'tenantId': tenant_id,
|
||||
'id': user_id,
|
||||
}
|
||||
}
|
||||
|
||||
self.stub_url(httpretty.POST, ['users'], json=resp_body)
|
||||
|
||||
user = self.client.users.create(user_name, tenant_id=tenant_id,
|
||||
enabled=user_enabled)
|
||||
self.assertIsInstance(user, users.User)
|
||||
self.assertEqual(user_id, user.id)
|
||||
self.assertEqual(user_name, user.name)
|
||||
self.assertRequestBodyIs(json=req_body)
|
||||
|
||||
@httpretty.activate
|
||||
def test_delete(self):
|
||||
self.stub_url(httpretty.DELETE, ['users', self.ADMIN_USER_ID],
|
||||
|
||||
@@ -86,7 +86,8 @@ class UserManager(base.ManagerWithFind):
|
||||
return self._update("/users/%s/OS-KSADM/tenant" % base.getid(user),
|
||||
params, "user")
|
||||
|
||||
def create(self, name, password, email=None, tenant_id=None, enabled=True):
|
||||
def create(self, name, password=None, email=None,
|
||||
tenant_id=None, enabled=True):
|
||||
"""Create a user."""
|
||||
params = {"user": {"name": name,
|
||||
"password": password,
|
||||
|
||||
Reference in New Issue
Block a user