Use the ldap fixture to simplify tests
Change-Id: I80dd5e2f40eea2c62ac763fb962e740fb698c9b6
This commit is contained in:
parent
2787e2f7cc
commit
d0de3f5379
|
@ -15,11 +15,10 @@ import ldap
|
|||
from oslo_config import cfg
|
||||
|
||||
from keystone.common import cache
|
||||
from keystone.identity.backends.ldap import common as common_ldap
|
||||
from keystone.tests import unit
|
||||
from keystone.tests.unit import default_fixtures
|
||||
from keystone.tests.unit import fakeldap
|
||||
from keystone.tests.unit.ksfixtures import database
|
||||
from keystone.tests.unit.ksfixtures import ldapdb
|
||||
|
||||
|
||||
CONF = cfg.CONF
|
||||
|
@ -39,22 +38,15 @@ class BaseBackendLdapCommon(object):
|
|||
|
||||
def setUp(self):
|
||||
super(BaseBackendLdapCommon, self).setUp()
|
||||
self.useFixture(ldapdb.LDAPDatabase())
|
||||
|
||||
common_ldap.register_handler('fake://', fakeldap.FakeLdap)
|
||||
self.load_backends()
|
||||
self.load_fixtures(default_fixtures)
|
||||
|
||||
self.addCleanup(common_ldap._HANDLERS.clear)
|
||||
self.addCleanup(self.clear_database)
|
||||
|
||||
def _get_domain_fixture(self):
|
||||
"""Return the static domain, since domains in LDAP are read-only."""
|
||||
return self.resource_api.get_domain(CONF.identity.default_domain_id)
|
||||
|
||||
def clear_database(self):
|
||||
for shelf in fakeldap.FakeShelves:
|
||||
fakeldap.FakeShelves[shelf].clear()
|
||||
|
||||
def get_config(self, domain_id):
|
||||
# Only one conf structure unless we are using separate domain backends
|
||||
return CONF
|
||||
|
@ -111,7 +103,6 @@ class BaseBackendLdapIdentitySqlEverythingElse(unit.SQLDriverOverrides):
|
|||
def setUp(self):
|
||||
sqldb = self.useFixture(database.Database())
|
||||
super(BaseBackendLdapIdentitySqlEverythingElse, self).setUp()
|
||||
self.clear_database()
|
||||
self.load_backends()
|
||||
cache.configure_cache()
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@ from keystone.tests import unit
|
|||
from keystone.tests.unit import default_fixtures
|
||||
from keystone.tests.unit import fakeldap
|
||||
from keystone.tests.unit.ksfixtures import database
|
||||
from keystone.tests.unit.ksfixtures import ldapdb
|
||||
|
||||
|
||||
CONF = cfg.CONF
|
||||
|
@ -205,20 +206,13 @@ class LDAPDeleteTreeTest(unit.TestCase):
|
|||
def setUp(self):
|
||||
super(LDAPDeleteTreeTest, self).setUp()
|
||||
|
||||
common_ldap.register_handler('fake://',
|
||||
fakeldap.FakeLdapNoSubtreeDelete)
|
||||
self.useFixture(
|
||||
ldapdb.LDAPDatabase(dbclass=fakeldap.FakeLdapNoSubtreeDelete))
|
||||
self.useFixture(database.Database(self.sql_driver_version_overrides))
|
||||
|
||||
self.load_backends()
|
||||
self.load_fixtures(default_fixtures)
|
||||
|
||||
self.addCleanup(self.clear_database)
|
||||
self.addCleanup(common_ldap._HANDLERS.clear)
|
||||
|
||||
def clear_database(self):
|
||||
for shelf in fakeldap.FakeShelves:
|
||||
fakeldap.FakeShelves[shelf].clear()
|
||||
|
||||
def config_overrides(self):
|
||||
super(LDAPDeleteTreeTest, self).config_overrides()
|
||||
self.config_fixture.config(group='identity', driver='ldap')
|
||||
|
@ -375,19 +369,13 @@ class LDAPPagedResultsTest(unit.TestCase):
|
|||
|
||||
def setUp(self):
|
||||
super(LDAPPagedResultsTest, self).setUp()
|
||||
self.clear_database()
|
||||
|
||||
common_ldap.register_handler('fake://', fakeldap.FakeLdap)
|
||||
self.addCleanup(common_ldap._HANDLERS.clear)
|
||||
self.useFixture(ldapdb.LDAPDatabase())
|
||||
self.useFixture(database.Database(self.sql_driver_version_overrides))
|
||||
|
||||
self.load_backends()
|
||||
self.load_fixtures(default_fixtures)
|
||||
|
||||
def clear_database(self):
|
||||
for shelf in fakeldap.FakeShelves:
|
||||
fakeldap.FakeShelves[shelf].clear()
|
||||
|
||||
def config_overrides(self):
|
||||
super(LDAPPagedResultsTest, self).config_overrides()
|
||||
self.config_fixture.config(group='identity', driver='ldap')
|
||||
|
|
|
@ -20,11 +20,14 @@ from keystone.tests.unit import fakeldap
|
|||
class LDAPDatabase(fixtures.Fixture):
|
||||
"""A fixture for setting up and tearing down an LDAP database."""
|
||||
|
||||
def __init__(self, dbclass=fakeldap.FakeLdap):
|
||||
self._dbclass = dbclass
|
||||
|
||||
def setUp(self):
|
||||
super(LDAPDatabase, self).setUp()
|
||||
self.clear()
|
||||
common_ldap._HANDLERS.clear()
|
||||
common_ldap.register_handler('fake://', fakeldap.FakeLdap)
|
||||
common_ldap.register_handler('fake://', self._dbclass)
|
||||
# TODO(dstanek): switch the flow here
|
||||
self.addCleanup(self.clear)
|
||||
self.addCleanup(common_ldap._HANDLERS.clear)
|
||||
|
|
Loading…
Reference in New Issue