1
0
mirror of https://github.com/django/django.git synced 2025-06-05 03:29:12 +00:00

[1.7.x] Fixed #24153 -- Fixed cookie test compatibility with Python 3.4.3+

Backport of b19b81b3960ec2090d40be65547502a3386a769b from master
This commit is contained in:
Tim Graham 2015-01-19 15:12:57 -05:00
parent 3e803f9cbd
commit 7a1ccc0699
2 changed files with 5 additions and 3 deletions

View File

@ -24,6 +24,7 @@ from django.test import TestCase, RequestFactory, override_settings
from django.test.utils import patch_logger 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.six.moves import http_cookies
from django.contrib.sessions.exceptions import InvalidSessionKey from django.contrib.sessions.exceptions import InvalidSessionKey
@ -532,7 +533,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)
@ -549,7 +550,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

@ -18,6 +18,7 @@ from django.test.client import FakePayload
from django.test.utils import str_prefix from django.test.utils import str_prefix
from django.utils import six from django.utils import six
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
@ -186,7 +187,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.assertTrue('; httponly' in 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_limited_stream(self): def test_limited_stream(self):