diff options
Diffstat (limited to 'keystonemiddleware/tests/unit/auth_token')
-rw-r--r-- | keystonemiddleware/tests/unit/auth_token/test_cache.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/keystonemiddleware/tests/unit/auth_token/test_cache.py b/keystonemiddleware/tests/unit/auth_token/test_cache.py index 52e657c..eb537a6 100644 --- a/keystonemiddleware/tests/unit/auth_token/test_cache.py +++ b/keystonemiddleware/tests/unit/auth_token/test_cache.py @@ -12,8 +12,10 @@ import uuid +import fixtures import six +from keystonemiddleware.auth_token import _cache from keystonemiddleware.auth_token import _exceptions as exc from keystonemiddleware.tests.unit.auth_token import base from keystonemiddleware.tests.unit import utils @@ -165,3 +167,24 @@ class TestLiveMemcache(base.BaseAuthTokenTestCase): token_cache.set(token, data) self.assertEqual(token_cache.get(token), data) + + +class TestMemcachePoolAbstraction(utils.TestCase): + def setUp(self): + super(TestMemcachePoolAbstraction, self).setUp() + self.useFixture(fixtures.MockPatch( + 'oslo_cache._memcache_pool._MemcacheClient')) + + def test_abstraction_layer_reserve_places_connection_back_in_pool(self): + cache_pool = _cache._MemcacheClientPool( + memcache_servers=[], arguments={}, maxsize=1, unused_timeout=10) + conn = None + with cache_pool.reserve() as client: + self.assertEqual(cache_pool._pool._acquired, 1) + conn = client + + self.assertEqual(cache_pool._pool._acquired, 0) + with cache_pool.reserve() as client: + # Make sure the connection we got before is in-fact the one we + # get again. + self.assertEqual(conn, client) |