diff options
| author | Florian Apolloner <florian@apolloner.eu> | 2013-02-26 09:53:47 +0100 |
|---|---|---|
| committer | Florian Apolloner <florian@apolloner.eu> | 2013-02-26 14:36:57 +0100 |
| commit | 89f40e36246100df6a11316c31a76712ebc6c501 (patch) | |
| tree | 6e65639683ddaf2027908d1ecb1739e0e2ff853b /tests/http_utils | |
| parent | b3d2ccb5bfbaf6e7fe1f98843baaa48c35a70950 (diff) | |
Merged regressiontests and modeltests into the test root.
Diffstat (limited to 'tests/http_utils')
| -rw-r--r-- | tests/http_utils/__init__.py | 0 | ||||
| -rw-r--r-- | tests/http_utils/models.py | 0 | ||||
| -rw-r--r-- | tests/http_utils/tests.py | 45 |
3 files changed, 45 insertions, 0 deletions
diff --git a/tests/http_utils/__init__.py b/tests/http_utils/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/http_utils/__init__.py diff --git a/tests/http_utils/models.py b/tests/http_utils/models.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/http_utils/models.py diff --git a/tests/http_utils/tests.py b/tests/http_utils/tests.py new file mode 100644 index 0000000000..7dfd24d721 --- /dev/null +++ b/tests/http_utils/tests.py @@ -0,0 +1,45 @@ +from __future__ import unicode_literals + +from django.http import HttpRequest, HttpResponse, StreamingHttpResponse +from django.http.utils import conditional_content_removal +from django.test import TestCase + + +class HttpUtilTests(TestCase): + + def test_conditional_content_removal(self): + """ + Tests that content is removed from regular and streaming responses with + a status_code of 100-199, 204, 304 or a method of "HEAD". + """ + req = HttpRequest() + + # Do nothing for 200 responses. + res = HttpResponse('abc') + conditional_content_removal(req, res) + self.assertEqual(res.content, b'abc') + + res = StreamingHttpResponse(['abc']) + conditional_content_removal(req, res) + self.assertEqual(b''.join(res), b'abc') + + # Strip content for some status codes. + for status_code in (100, 150, 199, 204, 304): + res = HttpResponse('abc', status=status_code) + conditional_content_removal(req, res) + self.assertEqual(res.content, b'') + + res = StreamingHttpResponse(['abc'], status=status_code) + conditional_content_removal(req, res) + self.assertEqual(b''.join(res), b'') + + # Strip content for HEAD requests. + req.method = 'HEAD' + + res = HttpResponse('abc') + conditional_content_removal(req, res) + self.assertEqual(res.content, b'') + + res = StreamingHttpResponse(['abc']) + conditional_content_removal(req, res) + self.assertEqual(b''.join(res), b'') |
