summaryrefslogtreecommitdiffstats
path: root/tests/test_backend.py
diff options
context:
space:
mode:
authorWu Wenxiang <wu.wenxiang@99cloud.net>2013-06-16 10:47:01 +0800
committerWu Wenxiang <wu.wenxiang@99cloud.net>2013-06-16 13:36:04 +0800
commit30d4f0be141e1b4de849e68676ecda5b337164ec (patch)
tree728d04541f8c4cc9891c6985d0ac7ca513342f7f /tests/test_backend.py
parent3c687d17016cb8efcfdce2de0d2f923121917fcb (diff)
downloadkeystone-30d4f0be141e1b4de849e68676ecda5b337164ec.tar.gz
keystone-30d4f0be141e1b4de849e68676ecda5b337164ec.tar.xz
keystone-30d4f0be141e1b4de849e68676ecda5b337164ec.zip
Move user fileds type check to identity.Manager
The fileds type's checking logic during creating and updating users apply to all driver calls. It should be centralized in the identity.Manager rather that continuing the trend of spreading them out between controllers, managers and drivers. This patch move the enable type checking logic to identity.Manager and modify the related test cases in test_backend.py. Change-Id: I37df56a61cd5ab332dcc9d74a7e99ee9041aa32e
Diffstat (limited to 'tests/test_backend.py')
-rw-r--r--tests/test_backend.py95
1 files changed, 59 insertions, 36 deletions
diff --git a/tests/test_backend.py b/tests/test_backend.py
index 9e506928..52af2046 100644
--- a/tests/test_backend.py
+++ b/tests/test_backend.py
@@ -128,7 +128,7 @@ class IdentityTests(object):
'domain_id': DEFAULT_DOMAIN_ID,
'password': 'no_meta2',
}
- self.identity_api.create_user(user['id'], user)
+ self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
self.identity_api.add_user_to_project(self.tenant_baz['id'],
user['id'])
user_ref, tenant_ref, metadata_ref = self.identity_man.authenticate(
@@ -155,7 +155,7 @@ class IdentityTests(object):
'name': unicode_name,
'domain_id': DEFAULT_DOMAIN_ID,
'password': uuid.uuid4().hex}
- ref = self.identity_api.create_user(user['id'], user)
+ ref = self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
self.assertEqual(unicode_name, ref['name'])
def test_get_project(self):
@@ -290,7 +290,8 @@ class IdentityTests(object):
self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user['name'] = 'fake2'
self.assertRaises(exception.Conflict,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -303,7 +304,8 @@ class IdentityTests(object):
self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user['id'] = 'fake2'
self.assertRaises(exception.Conflict,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake2',
user)
@@ -332,7 +334,7 @@ class IdentityTests(object):
'password': uuid.uuid4().hex}
self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
user['domain_id'] = domain2['id']
- self.identity_api.update_user(user['id'], user)
+ self.identity_man.update_user(EMPTY_CONTEXT, user['id'], user)
def test_move_user_between_domains_with_clashing_names_fails(self):
domain1 = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex}
@@ -356,7 +358,8 @@ class IdentityTests(object):
# fail since the names clash
user1['domain_id'] = domain2['id']
self.assertRaises(exception.Conflict,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
user1['id'],
user1)
@@ -371,11 +374,12 @@ class IdentityTests(object):
'domain_id': DEFAULT_DOMAIN_ID,
'password': 'fakepass',
'tenants': ['bar']}
- self.identity_api.create_user('fake1', user1)
- self.identity_api.create_user('fake2', user2)
+ self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user1)
+ self.identity_man.create_user(EMPTY_CONTEXT, 'fake2', user2)
user2['name'] = 'fake1'
self.assertRaises(exception.Conflict,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake2',
user2)
@@ -385,10 +389,11 @@ class IdentityTests(object):
'domain_id': DEFAULT_DOMAIN_ID,
'password': 'fakepass',
'tenants': ['bar']}
- self.identity_api.create_user('fake1', user)
+ self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user['id'] = 'fake2'
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake1',
user)
user_ref = self.identity_api.get_user('fake1')
@@ -538,11 +543,15 @@ class IdentityTests(object):
new_user1 = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex,
'password': uuid.uuid4().hex, 'enabled': True,
'domain_id': new_domain['id']}
- self.identity_api.create_user(new_user1['id'], new_user1)
+ self.identity_man.create_user(EMPTY_CONTEXT,
+ new_user1['id'],
+ new_user1)
new_user2 = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex,
'password': uuid.uuid4().hex, 'enabled': True,
'domain_id': new_domain['id']}
- self.identity_api.create_user(new_user2['id'], new_user2)
+ self.identity_man.create_user(EMPTY_CONTEXT,
+ new_user2['id'],
+ new_user2)
roles_ref = self.identity_api.list_grants(
user_id=new_user1['id'],
domain_id=new_domain['id'])
@@ -588,7 +597,9 @@ class IdentityTests(object):
new_user1 = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex,
'password': uuid.uuid4().hex, 'enabled': True,
'domain_id': new_domain['id']}
- self.identity_api.create_user(new_user1['id'], new_user1)
+ self.identity_man.create_user(EMPTY_CONTEXT,
+ new_user1['id'],
+ new_user1)
self.assertRaises(exception.UserNotFound,
self.identity_api.get_roles_for_user_and_domain,
@@ -1414,7 +1425,8 @@ class IdentityTests(object):
def test_update_user_404(self):
user_id = uuid.uuid4().hex
self.assertRaises(exception.UserNotFound,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
user_id,
{'id': user_id})
@@ -1423,7 +1435,7 @@ class IdentityTests(object):
'name': uuid.uuid4().hex,
'domain_id': DEFAULT_DOMAIN_ID,
'password': uuid.uuid4().hex}
- self.identity_api.create_user(user['id'], user)
+ self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
self.identity_api.add_user_to_project(self.tenant_bar['id'],
user['id'])
self.identity_api.delete_user(user['id'])
@@ -1436,7 +1448,7 @@ class IdentityTests(object):
'name': uuid.uuid4().hex,
'domain_id': DEFAULT_DOMAIN_ID,
'password': uuid.uuid4().hex}
- self.identity_api.create_user(user['id'], user)
+ self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
self.identity_api.add_role_to_user_and_project(
user['id'],
self.tenant_bar['id'],
@@ -1526,7 +1538,8 @@ class IdentityTests(object):
user = {'id': 'fake1', 'name': 'a' * 65,
'domain_id': DEFAULT_DOMAIN_ID}
self.assertRaises(exception.ValidationError,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1534,7 +1547,8 @@ class IdentityTests(object):
user = {'id': 'fake1', 'name': '',
'domain_id': DEFAULT_DOMAIN_ID}
self.assertRaises(exception.ValidationError,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1542,14 +1556,16 @@ class IdentityTests(object):
user = {'id': 'fake1', 'name': None,
'domain_id': DEFAULT_DOMAIN_ID}
self.assertRaises(exception.ValidationError,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake1',
user)
user = {'id': 'fake1', 'name': 123,
'domain_id': DEFAULT_DOMAIN_ID}
self.assertRaises(exception.ValidationError,
- self.identity_man.create_user, EMPTY_CONTEXT,
+ self.identity_man.create_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1584,7 +1600,8 @@ class IdentityTests(object):
self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user['name'] = 'a' * 65
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1594,7 +1611,8 @@ class IdentityTests(object):
self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user['name'] = ''
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1605,13 +1623,15 @@ class IdentityTests(object):
user['name'] = None
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake1',
user)
user['name'] = 123
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user,
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
'fake1',
user)
@@ -1712,54 +1732,57 @@ class IdentityTests(object):
def test_update_user_enable(self):
user = {'id': 'fake1', 'name': 'fake1', 'enabled': True,
'domain_id': DEFAULT_DOMAIN_ID}
- self.identity_api.create_user('fake1', user)
+ self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], True)
user['enabled'] = False
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], user['enabled'])
# If not present, enabled field should not be updated
del user['enabled']
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], False)
user['enabled'] = True
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], user['enabled'])
del user['enabled']
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], True)
# Integers are valid Python's booleans. Explicitly test it.
user['enabled'] = 0
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], False)
# Any integers other than 0 are interpreted as True
user['enabled'] = -42
- self.identity_api.update_user('fake1', user)
+ self.identity_man.update_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], True)
def test_update_user_enable_fails(self):
user = {'id': 'fake1', 'name': 'fake1', 'enabled': True,
'domain_id': DEFAULT_DOMAIN_ID}
- self.identity_api.create_user('fake1', user)
+ self.identity_man.create_user(EMPTY_CONTEXT, 'fake1', user)
user_ref = self.identity_api.get_user('fake1')
self.assertEqual(user_ref['enabled'], True)
# Strings are not valid boolean values
user['enabled'] = "false"
self.assertRaises(exception.ValidationError,
- self.identity_api.update_user, 'fake1', user)
+ self.identity_man.update_user,
+ EMPTY_CONTEXT,
+ 'fake1',
+ user)
def test_update_project_enable(self):
tenant = {'id': 'fake1', 'name': 'fake1', 'enabled': True,
@@ -2025,14 +2048,14 @@ class IdentityTests(object):
user = {'domain_id': CONF.identity.default_domain_id,
'id': uuid.uuid4().hex,
'name': uuid.uuid4().hex, 'password': 'passw0rd'}
- self.identity_api.create_user(user['id'], user)
+ self.identity_man.create_user(EMPTY_CONTEXT, user['id'], user)
user_ref = self.identity_api.get_user(user['id'])
del user['password']
user_ref_dict = dict((x, user_ref[x]) for x in user_ref)
self.assertDictContainsSubset(user, user_ref_dict)
user['password'] = uuid.uuid4().hex
- self.identity_api.update_user(user['id'], user)
+ self.identity_man.update_user(EMPTY_CONTEXT, user['id'], user)
user_ref = self.identity_api.get_user(user['id'])
del user['password']
user_ref_dict = dict((x, user_ref[x]) for x in user_ref)