Merge "Adds a fixture for setting up the cache"
This commit is contained in:
commit
953a1bab55
@ -50,7 +50,6 @@ from keystone.common import environment
|
|||||||
environment.use_eventlet()
|
environment.use_eventlet()
|
||||||
|
|
||||||
from keystone import auth
|
from keystone import auth
|
||||||
from keystone.common import cache
|
|
||||||
from keystone.common import dependency
|
from keystone.common import dependency
|
||||||
from keystone.common import kvs
|
from keystone.common import kvs
|
||||||
from keystone.common.kvs import core as kvs_core
|
from keystone.common.kvs import core as kvs_core
|
||||||
@ -63,6 +62,7 @@ from keystone.openstack.common.db.sqlalchemy import session
|
|||||||
from keystone.openstack.common import log
|
from keystone.openstack.common import log
|
||||||
from keystone.openstack.common import timeutils
|
from keystone.openstack.common import timeutils
|
||||||
from keystone import service
|
from keystone import service
|
||||||
|
from keystone.tests import fixtures as ksfixtures
|
||||||
|
|
||||||
# NOTE(dstanek): Tests inheriting from TestCase depend on having the
|
# NOTE(dstanek): Tests inheriting from TestCase depend on having the
|
||||||
# policy_file command-line option declared before setUp runs. Importing the
|
# policy_file command-line option declared before setUp runs. Importing the
|
||||||
@ -326,16 +326,9 @@ class TestCase(testtools.TestCase):
|
|||||||
|
|
||||||
self.opt(policy_file=dirs.etc('policy.json'))
|
self.opt(policy_file=dirs.etc('policy.json'))
|
||||||
|
|
||||||
# NOTE(morganfainberg): The only way to reconfigure the
|
|
||||||
# CacheRegion object on each setUp() call is to remove the
|
|
||||||
# .backend property.
|
|
||||||
self.addCleanup(delattr, cache.REGION, 'backend')
|
|
||||||
|
|
||||||
# ensure the cache region instance is setup
|
|
||||||
cache.configure_cache_region(cache.REGION)
|
|
||||||
|
|
||||||
self.logger = self.useFixture(fixtures.FakeLogger(level=logging.DEBUG))
|
self.logger = self.useFixture(fixtures.FakeLogger(level=logging.DEBUG))
|
||||||
warnings.filterwarnings('ignore', category=DeprecationWarning)
|
warnings.filterwarnings('ignore', category=DeprecationWarning)
|
||||||
|
self.useFixture(ksfixtures.Cache())
|
||||||
|
|
||||||
# Clear the registry of providers so that providers from previous
|
# Clear the registry of providers so that providers from previous
|
||||||
# tests aren't used.
|
# tests aren't used.
|
||||||
|
16
keystone/tests/fixtures/__init__.py
vendored
16
keystone/tests/fixtures/__init__.py
vendored
@ -0,0 +1,16 @@
|
|||||||
|
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
|
||||||
|
# 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.fixtures.cache import Cache # flake8: noqa
|
38
keystone/tests/fixtures/cache.py
vendored
Normal file
38
keystone/tests/fixtures/cache.py
vendored
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
|
||||||
|
# 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 cache
|
||||||
|
|
||||||
|
|
||||||
|
class Cache(fixtures.Fixture):
|
||||||
|
"""A fixture for setting up and tearing down the cache between test cases.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
# 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.
|
||||||
|
if hasattr(cache.REGION, 'backend'):
|
||||||
|
del cache.REGION.backend
|
||||||
|
|
||||||
|
# ensure the cache region instance is setup
|
||||||
|
cache.configure_cache_region(cache.REGION)
|
||||||
|
|
||||||
|
super(Cache, self).setUp()
|
Loading…
Reference in New Issue
Block a user