From 4c5311614471869dc7e820978c77a7d9c3b36afc Mon Sep 17 00:00:00 2001 From: Malcolm Tredinnick Date: Mon, 21 May 2007 04:03:53 +0000 Subject: [PATCH] Fixed #4338 -- Added pop() method to SessionWrapper. Thanks, Gary Wilson. git-svn-id: http://code.djangoproject.com/svn/django/trunk@5306 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/contrib/sessions/middleware.py | 3 +++ django/contrib/sessions/tests.py | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 django/contrib/sessions/tests.py diff --git a/django/contrib/sessions/middleware.py b/django/contrib/sessions/middleware.py index 1498f3c8ba..434997d616 100644 --- a/django/contrib/sessions/middleware.py +++ b/django/contrib/sessions/middleware.py @@ -36,6 +36,9 @@ class SessionWrapper(object): def get(self, key, default=None): return self._session.get(key, default) + def pop(self, key, *args): + return self._session.pop(key, *args) + def set_test_cookie(self): self[TEST_COOKIE_NAME] = TEST_COOKIE_VALUE diff --git a/django/contrib/sessions/tests.py b/django/contrib/sessions/tests.py new file mode 100644 index 0000000000..5a28effa86 --- /dev/null +++ b/django/contrib/sessions/tests.py @@ -0,0 +1,19 @@ +r""" +>>> s = SessionWrapper(None) + +Inject data into the session cache. +>>> s._session_cache = {} +>>> s._session_cache['some key'] = 'exists' + +>>> s.pop('some key') +'exists' + +>>> s.pop('some key', 'does not exist') +'does not exist' +""" + +from django.contrib.sessions.middleware import SessionWrapper + +if __name__ == '__main__': + import doctest + doctest.testmod()