mirror of
https://github.com/django/django.git
synced 2025-10-28 16:16:12 +00:00
Fixed #16178 - Cleanup request classes' __repr__()
Thanks to julien for the patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16350 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -4,7 +4,7 @@ from StringIO import StringIO
|
||||
|
||||
from django.core.handlers.modpython import ModPythonRequest
|
||||
from django.core.handlers.wsgi import WSGIRequest, LimitedStream
|
||||
from django.http import HttpRequest, HttpResponse, parse_cookie
|
||||
from django.http import HttpRequest, HttpResponse, parse_cookie, build_request_repr
|
||||
from django.utils import unittest
|
||||
from django.utils.http import cookie_date
|
||||
|
||||
@@ -16,6 +16,18 @@ class RequestsTests(unittest.TestCase):
|
||||
self.assertEqual(request.COOKIES.keys(), [])
|
||||
self.assertEqual(request.META.keys(), [])
|
||||
|
||||
def test_httprequest_repr(self):
|
||||
request = HttpRequest()
|
||||
request.path = u'/somepath/'
|
||||
request.GET = {u'get-key': u'get-value'}
|
||||
request.POST = {u'post-key': u'post-value'}
|
||||
request.COOKIES = {u'post-key': u'post-value'}
|
||||
request.META = {u'post-key': u'post-value'}
|
||||
self.assertEqual(repr(request), u"<HttpRequest\npath:/somepath/,\nGET:{u'get-key': u'get-value'},\nPOST:{u'post-key': u'post-value'},\nCOOKIES:{u'post-key': u'post-value'},\nMETA:{u'post-key': u'post-value'}>")
|
||||
self.assertEqual(build_request_repr(request), repr(request))
|
||||
self.assertEqual(build_request_repr(request, path_override='/otherpath/', GET_override={u'a': u'b'}, POST_override={u'c': u'd'}, COOKIES_override={u'e': u'f'}, META_override={u'g': u'h'}),
|
||||
u"<HttpRequest\npath:/otherpath/,\nGET:{u'a': u'b'},\nPOST:{u'c': u'd'},\nCOOKIES:{u'e': u'f'},\nMETA:{u'g': u'h'}>")
|
||||
|
||||
def test_wsgirequest(self):
|
||||
request = WSGIRequest({'PATH_INFO': 'bogus', 'REQUEST_METHOD': 'bogus', 'wsgi.input': StringIO('')})
|
||||
self.assertEqual(request.GET.keys(), [])
|
||||
@@ -26,6 +38,17 @@ class RequestsTests(unittest.TestCase):
|
||||
self.assertEqual(request.META['REQUEST_METHOD'], 'bogus')
|
||||
self.assertEqual(request.META['SCRIPT_NAME'], '')
|
||||
|
||||
def test_wsgirequest_repr(self):
|
||||
request = WSGIRequest({'PATH_INFO': '/somepath/', 'REQUEST_METHOD': 'get', 'wsgi.input': StringIO('')})
|
||||
request.GET = {u'get-key': u'get-value'}
|
||||
request.POST = {u'post-key': u'post-value'}
|
||||
request.COOKIES = {u'post-key': u'post-value'}
|
||||
request.META = {u'post-key': u'post-value'}
|
||||
self.assertEqual(repr(request), u"<WSGIRequest\npath:/somepath/,\nGET:{u'get-key': u'get-value'},\nPOST:{u'post-key': u'post-value'},\nCOOKIES:{u'post-key': u'post-value'},\nMETA:{u'post-key': u'post-value'}>")
|
||||
self.assertEqual(build_request_repr(request), repr(request))
|
||||
self.assertEqual(build_request_repr(request, path_override='/otherpath/', GET_override={u'a': u'b'}, POST_override={u'c': u'd'}, COOKIES_override={u'e': u'f'}, META_override={u'g': u'h'}),
|
||||
u"<WSGIRequest\npath:/otherpath/,\nGET:{u'a': u'b'},\nPOST:{u'c': u'd'},\nCOOKIES:{u'e': u'f'},\nMETA:{u'g': u'h'}>")
|
||||
|
||||
def test_modpythonrequest(self):
|
||||
class FakeModPythonRequest(ModPythonRequest):
|
||||
def __init__(self, *args, **kwargs):
|
||||
@@ -45,6 +68,22 @@ class RequestsTests(unittest.TestCase):
|
||||
self.assertEqual(request.COOKIES.keys(), [])
|
||||
self.assertEqual(request.META.keys(), [])
|
||||
|
||||
def test_modpythonrequest_repr(self):
|
||||
class Dummy:
|
||||
def get_options(self):
|
||||
return {}
|
||||
req = Dummy()
|
||||
req.uri = '/somepath/'
|
||||
request = ModPythonRequest(req)
|
||||
request._get = {u'get-key': u'get-value'}
|
||||
request._post = {u'post-key': u'post-value'}
|
||||
request._cookies = {u'post-key': u'post-value'}
|
||||
request._meta = {u'post-key': u'post-value'}
|
||||
self.assertEqual(repr(request), u"<ModPythonRequest\npath:/somepath/,\nGET:{u'get-key': u'get-value'},\nPOST:{u'post-key': u'post-value'},\nCOOKIES:{u'post-key': u'post-value'},\nMETA:{u'post-key': u'post-value'}>")
|
||||
self.assertEqual(build_request_repr(request), repr(request))
|
||||
self.assertEqual(build_request_repr(request, path_override='/otherpath/', GET_override={u'a': u'b'}, POST_override={u'c': u'd'}, COOKIES_override={u'e': u'f'}, META_override={u'g': u'h'}),
|
||||
u"<ModPythonRequest\npath:/otherpath/,\nGET:{u'a': u'b'},\nPOST:{u'c': u'd'},\nCOOKIES:{u'e': u'f'},\nMETA:{u'g': u'h'}>")
|
||||
|
||||
def test_parse_cookie(self):
|
||||
self.assertEqual(parse_cookie('invalid:key=true'), {})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user