summaryrefslogtreecommitdiff
path: root/keystonemiddleware/tests/unit/auth_token/test_cache.py
diff options
context:
space:
mode:
Diffstat (limited to 'keystonemiddleware/tests/unit/auth_token/test_cache.py')
-rw-r--r--keystonemiddleware/tests/unit/auth_token/test_cache.py23
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)