summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2017-05-03 10:09:28 -0400
committerTim Graham <timograham@gmail.com>2017-05-03 12:39:07 -0400
commit578e576c31fcd5757c3f4fc2dea7673b3462f575 (patch)
tree8973a03bc95f6fe4ba8b6ad89e23b8345c06b1cf
parent584e10c76edcd3a33765a52c5cde0096a3ce7dbc (diff)
Fixed #28167 -- Fixed cache backend's SessionStore.exists() if session_key is None.
-rw-r--r--django/contrib/sessions/backends/cache.py2
-rw-r--r--tests/sessions_tests/tests.py3
2 files changed, 3 insertions, 2 deletions
diff --git a/django/contrib/sessions/backends/cache.py b/django/contrib/sessions/backends/cache.py
index c0d17ca45a..860d3a46c5 100644
--- a/django/contrib/sessions/backends/cache.py
+++ b/django/contrib/sessions/backends/cache.py
@@ -67,7 +67,7 @@ class SessionStore(SessionBase):
raise CreateError
def exists(self, session_key):
- return session_key and (self.cache_key_prefix + session_key) in self._cache
+ return bool(session_key) and (self.cache_key_prefix + session_key) in self._cache
def delete(self, session_key=None):
if session_key is None:
diff --git a/tests/sessions_tests/tests.py b/tests/sessions_tests/tests.py
index 552b80daeb..b70df90834 100644
--- a/tests/sessions_tests/tests.py
+++ b/tests/sessions_tests/tests.py
@@ -348,7 +348,8 @@ class SessionTestsMixin:
session = self.backend('someunknownkey')
session.load()
- self.assertFalse(session.exists(session.session_key))
+ self.assertIsNone(session.session_key)
+ self.assertIs(session.exists(session.session_key), False)
# provided unknown key was cycled, not reused
self.assertNotEqual(session.session_key, 'someunknownkey')