diff options
author | Brian Waldon <bcwaldon@gmail.com> | 2012-02-08 16:08:08 -0800 |
---|---|---|
committer | Brian Waldon <bcwaldon@gmail.com> | 2012-02-14 14:18:50 -0800 |
commit | 71436dbf188b3ff1c576fcd54b992530aac98b6c (patch) | |
tree | 98c28015635a15ab497e84fa5a0a73c8e484615d /tests/test_backend_memcache.py | |
parent | 1ed067cb5791585bb02644a4a3827b6640324a95 (diff) | |
download | keystone-71436dbf188b3ff1c576fcd54b992530aac98b6c.tar.gz keystone-71436dbf188b3ff1c576fcd54b992530aac98b6c.tar.xz keystone-71436dbf188b3ff1c576fcd54b992530aac98b6c.zip |
Add token expiration
* Config option token.expiration defines amount of time tokens should be valid
* Fixes bug 928545
Change-Id: I3dff7a1ebf03bb44fc6e5247f976baea0581de08
Diffstat (limited to 'tests/test_backend_memcache.py')
-rw-r--r-- | tests/test_backend_memcache.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/tests/test_backend_memcache.py b/tests/test_backend_memcache.py index b320b1f9..05ef2107 100644 --- a/tests/test_backend_memcache.py +++ b/tests/test_backend_memcache.py @@ -1,5 +1,7 @@ # vim: tabstop=4 shiftwidth=4 softtabstop=4 +import datetime +import time import uuid import memcache @@ -25,15 +27,17 @@ class MemcacheClient(object): def get(self, key): """Retrieves the value for a key or None.""" self.check_key(key) - try: - return self.cache[key] - except KeyError: + obj = self.cache.get(key) + now = time.mktime(datetime.datetime.now().timetuple()) + if obj and (obj[1] == 0 or obj[1] > now): + return obj[0] + else: raise exception.TokenNotFound(token_id=key) - def set(self, key, value): + def set(self, key, value, time=0): """Sets the value for a key.""" self.check_key(key) - self.cache[key] = value + self.cache[key] = (value, time) return True def delete(self, key): |