forked from s3lph/matemat
Full coverage in util.
This commit is contained in:
parent
594f904980
commit
39dacfcb39
1 changed files with 26 additions and 0 deletions
|
@ -204,6 +204,32 @@ class TestParseRequest(unittest.TestCase):
|
||||||
self.assertEqual(b'1337', args['bar'].get_bytes())
|
self.assertEqual(b'1337', args['bar'].get_bytes())
|
||||||
self.assertEqual('Hello, World!', args['baz'].get_str())
|
self.assertEqual('Hello, World!', args['baz'].get_str())
|
||||||
|
|
||||||
|
def test_parse_post_multipart_names(self):
|
||||||
|
"""
|
||||||
|
Test that multipart names work both with and without quotation marks
|
||||||
|
"""
|
||||||
|
path, args = parse_args('/',
|
||||||
|
postbody=b'--testBoundary1337\r\n'
|
||||||
|
b'Content-Disposition: form-data; name="foo"\r\n'
|
||||||
|
b'Content-Type: text/plain\r\n\r\n'
|
||||||
|
b'42\r\n'
|
||||||
|
b'--testBoundary1337\r\n'
|
||||||
|
b'Content-Disposition: form-data; name=bar\r\n'
|
||||||
|
b'Content-Type: text/plain\r\n\r\n'
|
||||||
|
b'Hello, World!\r\n'
|
||||||
|
b'--testBoundary1337--\r\n',
|
||||||
|
enctype='multipart/form-data; boundary=testBoundary1337')
|
||||||
|
self.assertEqual('/', path)
|
||||||
|
self.assertEqual(2, len(args))
|
||||||
|
self.assertIn('foo', args)
|
||||||
|
self.assertIn('bar', args)
|
||||||
|
self.assertTrue(args['foo'].is_scalar)
|
||||||
|
self.assertTrue(args['bar'].is_scalar)
|
||||||
|
self.assertEqual('text/plain', args['foo'].get_content_type())
|
||||||
|
self.assertEqual('text/plain', args['bar'].get_content_type())
|
||||||
|
self.assertEqual('42', args['foo'].get_str())
|
||||||
|
self.assertEqual('Hello, World!', args['bar'].get_str())
|
||||||
|
|
||||||
def test_parse_post_multipart_zero_arg(self):
|
def test_parse_post_multipart_zero_arg(self):
|
||||||
"""
|
"""
|
||||||
Test that a multipart POST request with an empty argument is parsed correctly.
|
Test that a multipart POST request with an empty argument is parsed correctly.
|
||||||
|
|
Loading…
Reference in a new issue