From 920a49cfa055733d575282973e23558c33087a4a Mon Sep 17 00:00:00 2001 From: RHE Date: Fri, 24 Nov 2017 13:54:26 +0100 Subject: remove keystone-moon Change-Id: I80d7c9b669f19d5f6607e162de8e0e55c2f80fdd Signed-off-by: RHE --- .../keystone/tests/unit/ksfixtures/__init__.py | 17 - .../keystone/tests/unit/ksfixtures/appserver.py | 79 ---- .../keystone/tests/unit/ksfixtures/auth_plugins.py | 34 -- .../keystone/tests/unit/ksfixtures/cache.py | 43 --- .../keystone/tests/unit/ksfixtures/database.py | 158 -------- .../keystone/tests/unit/ksfixtures/hacking.py | 417 --------------------- .../tests/unit/ksfixtures/key_repository.py | 30 -- .../keystone/tests/unit/ksfixtures/ldapdb.py | 35 -- .../keystone/tests/unit/ksfixtures/policy.py | 33 -- .../tests/unit/ksfixtures/temporaryfile.py | 29 -- 10 files changed, 875 deletions(-) delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/__init__.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/appserver.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/auth_plugins.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/cache.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/database.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/hacking.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/key_repository.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/ldapdb.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/policy.py delete mode 100644 keystone-moon/keystone/tests/unit/ksfixtures/temporaryfile.py (limited to 'keystone-moon/keystone/tests/unit/ksfixtures') diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/__init__.py b/keystone-moon/keystone/tests/unit/ksfixtures/__init__.py deleted file mode 100644 index 4b914752..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from keystone.tests.unit.ksfixtures.auth_plugins import ConfigAuthPlugins # noqa -from keystone.tests.unit.ksfixtures.cache import Cache # noqa -from keystone.tests.unit.ksfixtures.key_repository import KeyRepository # noqa -from keystone.tests.unit.ksfixtures.policy import Policy # noqa diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/appserver.py b/keystone-moon/keystone/tests/unit/ksfixtures/appserver.py deleted file mode 100644 index a23b804f..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/appserver.py +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from __future__ import absolute_import - -import fixtures -from oslo_config import cfg -from paste import deploy - -from keystone.common import environment - - -CONF = cfg.CONF - -MAIN = 'main' -ADMIN = 'admin' - - -class AppServer(fixtures.Fixture): - """A fixture for managing an application server instance.""" - - def __init__(self, config, name, cert=None, key=None, ca=None, - cert_required=False, host='127.0.0.1', port=0): - super(AppServer, self).__init__() - self.config = config - self.name = name - self.cert = cert - self.key = key - self.ca = ca - self.cert_required = cert_required - self.host = host - self.port = port - - def setUp(self): - super(AppServer, self).setUp() - - app = deploy.loadapp(self.config, name=self.name) - self.server = environment.Server(app, self.host, self.port) - self._setup_SSL_if_requested() - self.server.start(key='socket') - - # some tests need to know the port we ran on. - self.port = self.server.socket_info['socket'][1] - self._update_config_opt() - - self.addCleanup(self.server.stop) - - def _setup_SSL_if_requested(self): - # TODO(dstanek): fix environment.Server to take a SSLOpts instance - # so that the params are either always set or not - if (self.cert is not None and - self.ca is not None and - self.key is not None): - self.server.set_ssl(certfile=self.cert, - keyfile=self.key, - ca_certs=self.ca, - cert_required=self.cert_required) - - def _update_config_opt(self): - """Updates the config with the actual port used.""" - opt_name = self._get_config_option_for_section_name() - CONF.set_override(opt_name, self.port, group='eventlet_server', - enforce_type=True) - - def _get_config_option_for_section_name(self): - """Maps Paster config section names to port option names.""" - return {'admin': 'admin_port', 'main': 'public_port'}[self.name] diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/auth_plugins.py b/keystone-moon/keystone/tests/unit/ksfixtures/auth_plugins.py deleted file mode 100644 index 68ba6f3a..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/auth_plugins.py +++ /dev/null @@ -1,34 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import fixtures - -from keystone.common import config as common_cfg - - -class ConfigAuthPlugins(fixtures.Fixture): - """A fixture for setting up and tearing down a auth plugins.""" - - def __init__(self, config_fixture, methods, **method_classes): - super(ConfigAuthPlugins, self).__init__() - self.methods = methods - self.config_fixture = config_fixture - self.method_classes = method_classes - - def setUp(self): - super(ConfigAuthPlugins, self).setUp() - if self.methods: - self.config_fixture.config(group='auth', methods=self.methods) - common_cfg.setup_authentication() - if self.method_classes: - self.config_fixture.config(group='auth', **self.method_classes) diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/cache.py b/keystone-moon/keystone/tests/unit/ksfixtures/cache.py deleted file mode 100644 index e0833ae2..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/cache.py +++ /dev/null @@ -1,43 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import fixtures - -from keystone import catalog -from keystone.common import cache - - -CACHE_REGIONS = (cache.CACHE_REGION, catalog.COMPUTED_CATALOG_REGION) - - -class Cache(fixtures.Fixture): - """A fixture for setting up the cache between test cases. - - This will also tear down an existing cache if one is already configured. - """ - - def setUp(self): - super(Cache, self).setUp() - - # NOTE(dstanek): We must remove the existing cache backend in the - # setUp instead of the tearDown because it defaults to a no-op cache - # and we want the configure call below to create the correct backend. - - # NOTE(morganfainberg): The only way to reconfigure the CacheRegion - # object on each setUp() call is to remove the .backend property. - for region in CACHE_REGIONS: - if region.is_configured: - del region.backend - - # ensure the cache region instance is setup - cache.configure_cache(region=region) diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/database.py b/keystone-moon/keystone/tests/unit/ksfixtures/database.py deleted file mode 100644 index 52c35cee..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/database.py +++ /dev/null @@ -1,158 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import functools -import os - -import fixtures -from oslo_config import cfg -from oslo_db import options as db_options - -from keystone.common import sql -from keystone.tests import unit - - -CONF = cfg.CONF - - -def run_once(f): - """A decorator to ensure the decorated function is only executed once. - - The decorated function is assumed to have a one parameter. - - """ - @functools.wraps(f) - def wrapper(one): - if not wrapper.already_ran: - f(one) - wrapper.already_ran = True - wrapper.already_ran = False - return wrapper - - -# NOTE(I159): Every execution all the options will be cleared. The method must -# be called at the every fixture initialization. -def initialize_sql_session(): - # Make sure the DB is located in the correct location, in this case set - # the default value, as this should be able to be overridden in some - # test cases. - db_options.set_defaults( - CONF, - connection=unit.IN_MEM_DB_CONN_STRING) - - -@run_once -def _load_sqlalchemy_models(version_specifiers): - """Find all modules containing SQLAlchemy models and import them. - - This creates more consistent, deterministic test runs because tables - for all core and extension models are always created in the test - database. We ensure this by importing all modules that contain model - definitions. - - The database schema during test runs is created using reflection. - Reflection is simply SQLAlchemy taking the model definitions for - all models currently imported and making tables for each of them. - The database schema created during test runs may vary between tests - as more models are imported. Importing all models at the start of - the test run avoids this problem. - - version_specifiers is a dict that contains any specific driver versions - that have been requested. The dict is of the form: - - { : {'versioned_backend' : , - 'versionless_backend' : } - } - - For example: - - {'keystone.assignment': {'versioned_backend' : 'V8_backends', - 'versionless_backend' : 'backends'}, - 'keystone.identity': {'versioned_backend' : 'V9_backends', - 'versionless_backend' : 'backends'} - } - - The version_specifiers will be used to load the correct driver. The - algorithm for this assumes that versioned drivers begin in 'V'. - - """ - keystone_root = os.path.normpath(os.path.join( - os.path.dirname(__file__), '..', '..', '..')) - for root, dirs, files in os.walk(keystone_root): - # NOTE(morganfainberg): Slice the keystone_root off the root to ensure - # we do not end up with a module name like: - # Users.home.openstack.keystone.assignment.backends.sql - root = root[len(keystone_root):] - if root.endswith('backends') and 'sql.py' in files: - # The root will be prefixed with an instance of os.sep, which will - # make the root after replacement '.', the 'keystone' part - # of the module path is always added to the front - module_root = ('keystone.%s' % - root.replace(os.sep, '.').lstrip('.')) - module_components = module_root.split('.') - module_without_backends = '' - for x in range(0, len(module_components) - 1): - module_without_backends += module_components[x] + '.' - module_without_backends = module_without_backends.rstrip('.') - this_backend = module_components[len(module_components) - 1] - - # At this point module_without_backends might be something like - # 'keystone.assignment', while this_backend might be something - # 'V8_backends'. - - if module_without_backends.startswith('keystone.contrib'): - # All the sql modules have now been moved into the core tree - # so no point in loading these again here (and, in fact, doing - # so might break trying to load a versioned driver. - continue - - if module_without_backends in version_specifiers: - # OK, so there is a request for a specific version of this one. - # We therefore should skip any other versioned backend as well - # as the non-versioned one. - version = version_specifiers[module_without_backends] - if ((this_backend != version['versioned_backend'] and - this_backend.startswith('V')) or - this_backend == version['versionless_backend']): - continue - else: - # No versioned driver requested, so ignore any that are - # versioned - if this_backend.startswith('V'): - continue - - module_name = module_root + '.sql' - __import__(module_name) - - -class Database(fixtures.Fixture): - """A fixture for setting up and tearing down a database.""" - - def __init__(self, version_specifiers=None): - super(Database, self).__init__() - initialize_sql_session() - if version_specifiers is None: - version_specifiers = {} - _load_sqlalchemy_models(version_specifiers) - - def setUp(self): - super(Database, self).setUp() - - with sql.session_for_write() as session: - self.engine = session.get_bind() - self.addCleanup(sql.cleanup) - sql.ModelBase.metadata.create_all(bind=self.engine) - self.addCleanup(sql.ModelBase.metadata.drop_all, bind=self.engine) - - def recreate(self): - sql.ModelBase.metadata.create_all(bind=self.engine) diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/hacking.py b/keystone-moon/keystone/tests/unit/ksfixtures/hacking.py deleted file mode 100644 index 9977b206..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/hacking.py +++ /dev/null @@ -1,417 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -# NOTE(morganfainberg) This file shouldn't have flake8 run on it as it has -# code examples that will fail normal CI pep8/flake8 tests. This is expected. -# The code has been moved here to ensure that proper tests occur on the -# test_hacking_checks test cases. -# flake8: noqa - -import fixtures - - -class HackingCode(fixtures.Fixture): - """A fixture to house the various code examples for the keystone hacking - style checks. - """ - - mutable_default_args = { - 'code': """ - def f(): - pass - - def f(a, b='', c=None): - pass - - def f(bad=[]): - pass - - def f(foo, bad=[], more_bad=[x for x in range(3)]): - pass - - def f(foo, bad={}): - pass - - def f(foo, bad={}, another_bad=[], fine=None): - pass - - def f(bad=[]): # noqa - pass - - def funcs(bad=dict(), more_bad=list(), even_more_bad=set()): - "creating mutables through builtins" - - def funcs(bad=something(), more_bad=some_object.something()): - "defaults from any functions" - - def f(bad=set(), more_bad={x for x in range(3)}, - even_more_bad={1, 2, 3}): - "set and set comprehession" - - def f(bad={x: x for x in range(3)}): - "dict comprehension" - """, - 'expected_errors': [ - (7, 10, 'K001'), - (10, 15, 'K001'), - (10, 29, 'K001'), - (13, 15, 'K001'), - (16, 15, 'K001'), - (16, 31, 'K001'), - (22, 14, 'K001'), - (22, 31, 'K001'), - (22, 53, 'K001'), - (25, 14, 'K001'), - (25, 36, 'K001'), - (28, 10, 'K001'), - (28, 27, 'K001'), - (29, 21, 'K001'), - (32, 11, 'K001'), - ]} - - comments_begin_with_space = { - 'code': """ - # This is a good comment - - #This is a bad one - - # This is alright and can - # be continued with extra indentation - # if that's what the developer wants. - """, - 'expected_errors': [ - (3, 0, 'K002'), - ]} - - asserting_none_equality = { - 'code': """ - class Test(object): - - def test(self): - self.assertEqual('', '') - self.assertEqual('', None) - self.assertEqual(None, '') - self.assertNotEqual('', None) - self.assertNotEqual(None, '') - self.assertNotEqual('', None) # noqa - self.assertNotEqual(None, '') # noqa - """, - 'expected_errors': [ - (5, 8, 'K003'), - (6, 8, 'K003'), - (7, 8, 'K004'), - (8, 8, 'K004'), - ]} - - dict_constructor = { - 'code': """ - lower_res = {k.lower(): v for k, v in six.iteritems(res[1])} - fool = dict(a='a', b='b') - lower_res = dict((k.lower(), v) for k, v in six.iteritems(res[1])) - attrs = dict([(k, _from_json(v))]) - dict([[i,i] for i in range(3)]) - dict(({1:2})) - """, - 'expected_errors': [ - (3, 0, 'K008'), - (4, 0, 'K008'), - (5, 0, 'K008'), - ]} - - -class HackingLogging(fixtures.Fixture): - - shared_imports = """ - import logging - import logging as stlib_logging - from keystone.i18n import _ - from keystone.i18n import _ as oslo_i18n - from keystone.i18n import _LC - from keystone.i18n import _LE - from keystone.i18n import _LE as error_hint - from keystone.i18n import _LI - from keystone.i18n import _LW - from oslo_log import log - from oslo_log import log as oslo_logging - """ - - examples = [ - { - 'code': """ - # stdlib logging - LOG = logging.getLogger() - LOG.info(_('text')) - class C: - def __init__(self): - LOG.warning(oslo_i18n('text', {})) - LOG.warning(_LW('text', {})) - """, - 'expected_errors': [ - (3, 9, 'K006'), - (6, 20, 'K006'), - ], - }, - { - 'code': """ - # stdlib logging w/ alias and specifying a logger - class C: - def __init__(self): - self.L = logging.getLogger(__name__) - def m(self): - self.L.warning( - _('text'), {} - ) - self.L.warning( - _LW('text'), {} - ) - """, - 'expected_errors': [ - (7, 12, 'K006'), - ], - }, - { - 'code': """ - # oslo logging and specifying a logger - L = log.getLogger(__name__) - L.error(oslo_i18n('text')) - L.error(error_hint('text')) - """, - 'expected_errors': [ - (3, 8, 'K006'), - ], - }, - { - 'code': """ - # oslo logging w/ alias - class C: - def __init__(self): - self.LOG = oslo_logging.getLogger() - self.LOG.critical(_('text')) - self.LOG.critical(_LC('text')) - """, - 'expected_errors': [ - (5, 26, 'K006'), - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - # translation on a separate line - msg = _('text') - LOG.exception(msg) - msg = _LE('text') - LOG.exception(msg) - """, - 'expected_errors': [ - (4, 14, 'K006'), - ], - }, - { - 'code': """ - LOG = logging.getLogger() - - # ensure the correct helper is being used - LOG.warning(_LI('this should cause an error')) - - # debug should not allow any helpers either - LOG.debug(_LI('this should cause an error')) - """, - 'expected_errors': [ - (4, 12, 'K006'), - (7, 10, 'K005'), - ], - }, - { - 'code': """ - # this should not be an error - L = log.getLogger(__name__) - msg = _('text') - L.warning(msg) - raise Exception(msg) - """, - 'expected_errors': [], - }, - { - 'code': """ - L = log.getLogger(__name__) - def f(): - msg = _('text') - L2.warning(msg) - something = True # add an extra statement here - raise Exception(msg) - """, - 'expected_errors': [], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - def func(): - msg = _('text') - LOG.warning(msg) - raise Exception('some other message') - """, - 'expected_errors': [ - (4, 16, 'K006'), - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - if True: - msg = _('text') - else: - msg = _('text') - LOG.warning(msg) - raise Exception(msg) - """, - 'expected_errors': [ - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - if True: - msg = _('text') - else: - msg = _('text') - LOG.warning(msg) - """, - 'expected_errors': [ - (6, 12, 'K006'), - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - msg = _LW('text') - LOG.warning(msg) - raise Exception(msg) - """, - 'expected_errors': [ - (3, 12, 'K007'), - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - msg = _LW('text') - LOG.warning(msg) - msg = _('something else') - raise Exception(msg) - """, - 'expected_errors': [], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - msg = _LW('hello %s') % 'world' - LOG.warning(msg) - raise Exception(msg) - """, - 'expected_errors': [ - (3, 12, 'K007'), - ], - }, - { - 'code': """ - LOG = log.getLogger(__name__) - msg = _LW('hello %s') % 'world' - LOG.warning(msg) - """, - 'expected_errors': [], - }, - { - 'code': """ - # this should not be an error - LOG = log.getLogger(__name__) - try: - something = True - except AssertionError as e: - LOG.warning(six.text_type(e)) - raise exception.Unauthorized(e) - """, - 'expected_errors': [], - }, - ] - - assert_not_using_deprecated_warn = { - 'code': """ - # Logger.warn has been deprecated in Python3 in favor of - # Logger.warning - LOG = log.getLogger(__name__) - LOG.warn(_LW('text')) - """, - 'expected_errors': [ - (4, 9, 'K009'), - ], - } - - assert_no_translations_for_debug_logging = { - 'code': """ - # stdlib logging - L0 = logging.getLogger() - L0.debug(_('text')) - class C: - def __init__(self): - L0.debug(oslo_i18n('text', {})) - - # stdlib logging w/ alias and specifying a logger - class C: - def __init__(self): - self.L1 = logging.getLogger(__name__) - def m(self): - self.L1.debug( - _('text'), {} - ) - - # oslo logging and specifying a logger - L2 = logging.getLogger(__name__) - L2.debug(oslo_i18n('text')) - - # oslo logging w/ alias - class C: - def __init__(self): - self.L3 = oslo_logging.getLogger() - self.L3.debug(_('text')) - - # translation on a separate line - msg = _('text') - L2.debug(msg) - - # this should not fail - if True: - msg = _('message %s') % X - L2.error(msg) - raise TypeError(msg) - if True: - msg = 'message' - L2.debug(msg) - - # this should not fail - if True: - if True: - msg = _('message') - else: - msg = _('message') - L2.debug(msg) - raise Exception(msg) - """, - 'expected_errors': [ - (3, 9, 'K005'), - (6, 17, 'K005'), - (14, 12, 'K005'), - (19, 9, 'K005'), - (25, 22, 'K005'), - (29, 9, 'K005'), - ] - } - diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/key_repository.py b/keystone-moon/keystone/tests/unit/ksfixtures/key_repository.py deleted file mode 100644 index 7784bddc..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/key_repository.py +++ /dev/null @@ -1,30 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import fixtures - -from keystone.token.providers.fernet import utils - - -class KeyRepository(fixtures.Fixture): - def __init__(self, config_fixture): - super(KeyRepository, self).__init__() - self.config_fixture = config_fixture - - def setUp(self): - super(KeyRepository, self).setUp() - directory = self.useFixture(fixtures.TempDir()).path - self.config_fixture.config(group='fernet_tokens', - key_repository=directory) - - utils.create_key_directory() - utils.initialize_key_repository() diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/ldapdb.py b/keystone-moon/keystone/tests/unit/ksfixtures/ldapdb.py deleted file mode 100644 index 6cd8cc0b..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/ldapdb.py +++ /dev/null @@ -1,35 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import fixtures - -from keystone.common import ldap as common_ldap -from keystone.common.ldap import core as common_ldap_core -from keystone.tests.unit import fakeldap - - -class LDAPDatabase(fixtures.Fixture): - """A fixture for setting up and tearing down an LDAP database.""" - - def setUp(self): - super(LDAPDatabase, self).setUp() - self.clear() - common_ldap_core._HANDLERS.clear() - common_ldap.register_handler('fake://', fakeldap.FakeLdap) - # TODO(dstanek): switch the flow here - self.addCleanup(self.clear) - self.addCleanup(common_ldap_core._HANDLERS.clear) - - def clear(self): - for shelf in fakeldap.FakeShelves: - fakeldap.FakeShelves[shelf].clear() diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/policy.py b/keystone-moon/keystone/tests/unit/ksfixtures/policy.py deleted file mode 100644 index b883f980..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/policy.py +++ /dev/null @@ -1,33 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import fixtures -from oslo_policy import opts - -from keystone.policy.backends import rules - - -class Policy(fixtures.Fixture): - """A fixture for working with policy configuration.""" - - def __init__(self, policy_file, config_fixture): - self._policy_file = policy_file - self._config_fixture = config_fixture - - def setUp(self): - super(Policy, self).setUp() - opts.set_defaults(self._config_fixture.conf) - self._config_fixture.config(group='oslo_policy', - policy_file=self._policy_file) - rules.init() - self.addCleanup(rules.reset) diff --git a/keystone-moon/keystone/tests/unit/ksfixtures/temporaryfile.py b/keystone-moon/keystone/tests/unit/ksfixtures/temporaryfile.py deleted file mode 100644 index a4be06f8..00000000 --- a/keystone-moon/keystone/tests/unit/ksfixtures/temporaryfile.py +++ /dev/null @@ -1,29 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import os -import tempfile - -import fixtures - - -class SecureTempFile(fixtures.Fixture): - """A fixture for creating a secure temp file.""" - - def setUp(self): - super(SecureTempFile, self).setUp() - - _fd, self.file_name = tempfile.mkstemp() - # Make sure no file descriptors are leaked, close the unused FD. - os.close(_fd) - self.addCleanup(os.remove, self.file_name) -- cgit 1.2.3-korg