diff options
| author | Tom Christie | 2013-12-09 07:45:45 +0000 |
|---|---|---|
| committer | Tom Christie | 2013-12-09 07:45:45 +0000 |
| commit | 80ef2685e522fc87bd8af9767aa7b231c9991ea4 (patch) | |
| tree | 4be3191af2eec42ffea97443c9e9f11ee5631ca7 /rest_framework/tests/test_renderers.py | |
| parent | 4e9385e709bcee87456a99839841ecf6b56f337a (diff) | |
| parent | 175b4d233d578b5964db72f91a96bb3b4a0f3e99 (diff) | |
| download | django-rest-framework-80ef2685e522fc87bd8af9767aa7b231c9991ea4.tar.bz2 | |
Merge master
Diffstat (limited to 'rest_framework/tests/test_renderers.py')
| -rw-r--r-- | rest_framework/tests/test_renderers.py | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/rest_framework/tests/test_renderers.py b/rest_framework/tests/test_renderers.py index f4818eef..d13b3492 100644 --- a/rest_framework/tests/test_renderers.py +++ b/rest_framework/tests/test_renderers.py @@ -64,17 +64,23 @@ class MockView(APIView): class MockGETView(APIView): - def get(self, request, **kwargs): return Response({'foo': ['bar', 'baz']}) -class MockPOSTView(APIView): +class MockPOSTView(APIView): def post(self, request, **kwargs): return Response({'foo': request.DATA}) +class EmptyGETView(APIView): + renderer_classes = (JSONRenderer,) + + def get(self, request, **kwargs): + return Response(status=status.HTTP_204_NO_CONTENT) + + class HTMLView(APIView): renderer_classes = (BrowsableAPIRenderer, ) @@ -97,6 +103,7 @@ urlpatterns = patterns('', url(r'^parseerror$', MockPOSTView.as_view(renderer_classes=[JSONRenderer, BrowsableAPIRenderer])), url(r'^html$', HTMLView.as_view()), url(r'^html1$', HTMLView1.as_view()), + url(r'^empty$', EmptyGETView.as_view()), url(r'^api', include('rest_framework.urls', namespace='rest_framework')) ) @@ -232,6 +239,17 @@ class RendererEndToEndTests(TestCase): self.assertEqual(resp['Content-Type'], 'text/html; charset=utf-8') self.assertEqual(resp.status_code, status.HTTP_400_BAD_REQUEST) + def test_204_no_content_responses_have_no_content_type_set(self): + """ + Regression test for #1196 + + https://github.com/tomchristie/django-rest-framework/issues/1196 + """ + resp = self.client.get('/empty') + self.assertEqual(resp.get('Content-Type', None), None) + self.assertEqual(resp.status_code, status.HTTP_204_NO_CONTENT) + + _flat_repr = '{"foo": ["bar", "baz"]}' _indented_repr = '{\n "foo": [\n "bar",\n "baz"\n ]\n}' |
