Browse files

Fixed #7583 -- Corrected the testing docs that referred to the defun…

…ct headers attribute of the response. Added a test case to validate (and document) the new behavior. Thanks to Malcolm for the report.

git-svn-id: bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
freakboy3742 committed Jul 12, 2008
1 parent b038abe commit 4aa6c5725137dc47e3baf4d9df94352e529fa3f4
@@ -600,8 +600,6 @@ Specifically, a ``Response`` object has the following attributes:
``context`` will be a list of ``Context``
objects, in the order in which they were rendered.
- ``headers`` The HTTP headers of the response. This is a dictionary.
``request`` The request data that stimulated the response.
``status_code`` The HTTP status of the response, as an integer. See
@@ -619,6 +617,10 @@ Specifically, a ``Response`` object has the following attributes:
which they were rendered.
=============== ==========================================================
+You can also use dictionary syntax on the response object to query the value
+of any settings in the HTTP headers. For example, you could determine the
+content type of a response using ``response['Content-Type']``.
.. _RFC2616:
.. _template inheritance: ../templates/#template-inheritance
@@ -70,7 +70,13 @@ def test_post(self):
self.assertEqual(response.context['data'], '37')
self.assertEqual(, 'POST Template')
self.failUnless('Data received' in response.content)
+ def test_response_headers(self):
+ "Check the value of HTTP headers returned in a response"
+ response = self.client.get("/test_client/header_view/")
+ self.assertEquals(response['X-DJANGO-TEST'], 'Slartibartfast')
def test_raw_post(self):
"POST raw data (with a content type) to a view"
test_doc = """<?xml version="1.0" encoding="utf-8"?><library><book><title>Blink</title><author>Malcolm Gladwell</author></book></library>"""
@@ -5,6 +5,7 @@
urlpatterns = patterns('',
(r'^get_view/$', views.get_view),
(r'^post_view/$', views.post_view),
+ (r'^header_view/$', views.view_with_header),
(r'^raw_post_view/$', views.raw_post_view),
(r'^redirect_view/$', views.redirect_view),
(r'^permanent_redirect_view/$', redirect_to, { 'url': '/test_client/get_view/' }),
@@ -32,6 +32,12 @@ def post_view(request):
return HttpResponse(t.render(c))
+def view_with_header(request):
+ "A view that has a custom header"
+ response = HttpResponse()
+ response['X-DJANGO-TEST'] = 'Slartibartfast'
+ return response
def raw_post_view(request):
"""A view which expects raw XML to be posted and returns content extracted
from the XML"""

0 comments on commit 4aa6c57

Please sign in to comment.