diff options
author | Jenkins <jenkins@review.openstack.org> | 2012-09-11 00:17:28 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2012-09-11 00:17:28 +0000 |
commit | ee31114d9dfc99bb143241dc547f7b4abeaaafbf (patch) | |
tree | fd52db01e1e9b39b64a0abab025ee901c5c769ce | |
parent | 3245a70beea7a472dfbde606fcd99aaee3a1925c (diff) | |
parent | 235c4ce3d7d5459974fa1995f6d58f4268ebfc7e (diff) | |
download | keystone-ee31114d9dfc99bb143241dc547f7b4abeaaafbf.tar.gz keystone-ee31114d9dfc99bb143241dc547f7b4abeaaafbf.tar.xz keystone-ee31114d9dfc99bb143241dc547f7b4abeaaafbf.zip |
Merge "Implementation of tenant,user,role list functions for ldap"
-rw-r--r-- | keystone/identity/backends/ldap/core.py | 9 | ||||
-rw-r--r-- | tests/test_backend.py | 31 |
2 files changed, 40 insertions, 0 deletions
diff --git a/keystone/identity/backends/ldap/core.py b/keystone/identity/backends/ldap/core.py index c3dd52cb..5b32a679 100644 --- a/keystone/identity/backends/ldap/core.py +++ b/keystone/identity/backends/ldap/core.py @@ -116,6 +116,9 @@ class Identity(identity.Driver): except exception.NotFound: raise exception.TenantNotFound(tenant_id=tenant_id) + def get_tenants(self): + return self.tenant.get_all() + def get_tenant_by_name(self, tenant_name): try: return self.tenant.get_by_name(tenant_name) @@ -131,6 +134,9 @@ class Identity(identity.Driver): def get_user(self, user_id): return _filter_user(self._get_user(user_id)) + def list_users(self): + return self.user.get_all() + def get_user_by_name(self, user_name): try: return _filter_user(self.user.get_by_name(user_name)) @@ -152,6 +158,9 @@ class Identity(identity.Driver): except exception.NotFound: raise exception.RoleNotFound(role_id=role_id) + def list_roles(self): + return self.role.get_all() + # These should probably be part of the high-level API # When this happens, then change TenantAPI.add_user to not ignore # ldap.TYPE_OR_VALUE_EXISTS diff --git a/tests/test_backend.py b/tests/test_backend.py index dd843808..72ed5b57 100644 --- a/tests/test_backend.py +++ b/tests/test_backend.py @@ -16,6 +16,7 @@ import datetime import uuid +import default_fixtures from keystone import exception from keystone.openstack.common import timeutils @@ -608,6 +609,36 @@ class IdentityTests(object): 'fake1', user) + def test_list_users(self): + users = self.identity_api.list_users() + for test_user in default_fixtures.USERS: + user_id = test_user['id'] + found = False + for user in users: + if user['id'] == user_id: + found = True + self.assertTrue('found') + + def test_list_roles(self): + roles = self.identity_api.list_roles() + for test_role in default_fixtures.ROLES: + role_id = test_role['id'] + found = False + for role in roles: + if role['id'] == role_id: + found = True + self.assertTrue('found') + + def test_get_tenants(self): + tenants = self.identity_api.get_tenants() + for test_tenant in default_fixtures.TENANTS: + tenant_id = test_tenant['id'] + found = False + for tenant in tenants: + if tenant['id'] == tenant_id: + found = True + self.assertTrue('found') + class TokenTests(object): def test_token_crud(self): |