summaryrefslogtreecommitdiff
path: root/tests/requests_tests/tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/requests_tests/tests.py')
-rw-r--r--tests/requests_tests/tests.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/requests_tests/tests.py b/tests/requests_tests/tests.py
index b15d954cb3..c25dd913cf 100644
--- a/tests/requests_tests/tests.py
+++ b/tests/requests_tests/tests.py
@@ -456,6 +456,20 @@ class RequestsTests(SimpleTestCase):
with self.assertRaises(RawPostDataException):
request.body
+ def test_malformed_header(self):
+ tests = [
+ # Invalid encoding name with percent-encoded value
+ "text/plain; charset*=BOGUS''%20",
+ # Another invalid encoding with different value
+ "text/plain; filename*=INVALID''%s%s%s",
+ # Invalid encoding with multi-line encoded content
+ "text/plain; title*=NOTACODEC''%E2%80%A6",
+ ]
+ msg = "Invalid Content-Type header."
+ for header in tests:
+ with self.subTest(header=header), self.assertRaisesMessage(BadRequest, msg):
+ WSGIRequest({"REQUEST_METHOD": "GET", "CONTENT_TYPE": header})
+
def test_malformed_multipart_header(self):
tests = [
('Content-Disposition : form-data; name="name"', {"name": ["value"]}),