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.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/tests/requests_tests/tests.py b/tests/requests_tests/tests.py
index e52989b0da..e1744bf180 100644
--- a/tests/requests_tests/tests.py
+++ b/tests/requests_tests/tests.py
@@ -455,11 +455,18 @@ class RequestsTests(SimpleTestCase):
request.body
def test_malformed_multipart_header(self):
- for header in [
- 'Content-Disposition : form-data; name="name"',
- 'Content-Disposition:form-data; name="name"',
- 'Content-Disposition :form-data; name="name"',
- ]:
+ tests = [
+ ('Content-Disposition : form-data; name="name"', {"name": ["value"]}),
+ ('Content-Disposition:form-data; name="name"', {"name": ["value"]}),
+ ('Content-Disposition :form-data; name="name"', {"name": ["value"]}),
+ # The invalid encoding causes the entire part to be skipped.
+ (
+ 'Content-Disposition: form-data; name="name"; '
+ "filename*=BOGUS''test%20file.txt",
+ {},
+ ),
+ ]
+ for header, expected_post in tests:
with self.subTest(header):
payload = FakePayload(
"\r\n".join(
@@ -480,7 +487,7 @@ class RequestsTests(SimpleTestCase):
"wsgi.input": payload,
}
)
- self.assertEqual(request.POST, {"name": ["value"]})
+ self.assertEqual(request.POST, expected_post)
def test_body_after_POST_multipart_related(self):
"""