diff options
| author | Luke Plant <L.Plant.98@cantab.net> | 2011-06-09 23:15:42 +0000 |
|---|---|---|
| committer | Luke Plant <L.Plant.98@cantab.net> | 2011-06-09 23:15:42 +0000 |
| commit | db2f9bfae173b565215a9f7320d7a45d0532f2fe (patch) | |
| tree | d558e4e6b16aadfa1cdc39cfce3d882f774e5153 /tests/regressiontests/requests/tests.py | |
| parent | dff31de20aac85e4f4834c2466762cbf23fc0a7b (diff) | |
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
Diffstat (limited to 'tests/regressiontests/requests/tests.py')
| -rw-r--r-- | tests/regressiontests/requests/tests.py | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/tests/regressiontests/requests/tests.py b/tests/regressiontests/requests/tests.py index b68201494b..703e387319 100644 --- a/tests/regressiontests/requests/tests.py +++ b/tests/regressiontests/requests/tests.py @@ -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'), {}) |
