Fixed #24153 -- Fixed cookie test compatibility with Python 3.4.3+

This commit is contained in:
Tim Graham 2015-01-19 15:12:57 -05:00
parent f6019312ba
commit b19b81b396
2 changed files with 5 additions and 3 deletions

View File

@ -24,6 +24,7 @@ from django.test.utils import patch_logger
from django.utils import six from django.utils import six
from django.utils import timezone from django.utils import timezone
from django.utils.encoding import force_text from django.utils.encoding import force_text
from django.utils.six.moves import http_cookies
from django.contrib.sessions.exceptions import InvalidSessionKey from django.contrib.sessions.exceptions import InvalidSessionKey
@ -543,7 +544,7 @@ class SessionMiddlewareTests(unittest.TestCase):
response = middleware.process_response(request, response) response = middleware.process_response(request, response)
self.assertTrue( self.assertTrue(
response.cookies[settings.SESSION_COOKIE_NAME]['httponly']) response.cookies[settings.SESSION_COOKIE_NAME]['httponly'])
self.assertIn('httponly', self.assertIn(http_cookies.Morsel._reserved['httponly'],
str(response.cookies[settings.SESSION_COOKIE_NAME])) str(response.cookies[settings.SESSION_COOKIE_NAME]))
@override_settings(SESSION_COOKIE_HTTPONLY=False) @override_settings(SESSION_COOKIE_HTTPONLY=False)
@ -560,7 +561,7 @@ class SessionMiddlewareTests(unittest.TestCase):
response = middleware.process_response(request, response) response = middleware.process_response(request, response)
self.assertFalse(response.cookies[settings.SESSION_COOKIE_NAME]['httponly']) self.assertFalse(response.cookies[settings.SESSION_COOKIE_NAME]['httponly'])
self.assertNotIn('httponly', self.assertNotIn(http_cookies.Morsel._reserved['httponly'],
str(response.cookies[settings.SESSION_COOKIE_NAME])) str(response.cookies[settings.SESSION_COOKIE_NAME]))
def test_session_save_on_500(self): def test_session_save_on_500(self):

View File

@ -16,6 +16,7 @@ from django.test.utils import str_prefix
from django.utils import six from django.utils import six
from django.utils.encoding import force_str from django.utils.encoding import force_str
from django.utils.http import cookie_date, urlencode from django.utils.http import cookie_date, urlencode
from django.utils.six.moves import http_cookies
from django.utils.six.moves.urllib.parse import urlencode as original_urlencode from django.utils.six.moves.urllib.parse import urlencode as original_urlencode
from django.utils.timezone import utc from django.utils.timezone import utc
@ -221,7 +222,7 @@ class RequestsTests(SimpleTestCase):
example_cookie = response.cookies['example'] example_cookie = response.cookies['example']
# A compat cookie may be in use -- check that it has worked # A compat cookie may be in use -- check that it has worked
# both as an output string, and using the cookie attributes # both as an output string, and using the cookie attributes
self.assertIn('; httponly', str(example_cookie)) self.assertIn('; %s' % http_cookies.Morsel._reserved['httponly'], str(example_cookie))
self.assertTrue(example_cookie['httponly']) self.assertTrue(example_cookie['httponly'])
def test_unicode_cookie(self): def test_unicode_cookie(self):