Skip to content

Commit

Permalink
additional tests for passing filenames to targets
Browse files Browse the repository at this point in the history
  • Loading branch information
siddhantgoel committed May 21, 2018
1 parent 3d7ae28 commit 93018ef
Showing 1 changed file with 38 additions and 0 deletions.
38 changes: 38 additions & 0 deletions tests/test_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -580,3 +580,41 @@ def test_register_after_data_received(self):

self.assertRaises(ParseFailedException, parser.register,
'name', ValueTarget())

def test_missing_filename_directive(self):
data = b'''\
--1234
Content-Disposition: form-data; name="files"
Foo
--1234--
'''.replace(b'\n', b'\r\n')

target = ValueTarget()

self.assertFalse(target.multipart_filename)

parser = StreamingFormDataParser(
headers={'Content-Type': 'multipart/form-data; boundary=1234'})
parser.register('files', target)

parser.data_received(data)

self.assertEqual(target.value, b'Foo')
self.assertFalse(target.multipart_filename)

def test_filename_passed_to_target(self):
filename = 'file.txt'

content_type, body = encoded_dataset(filename)

target = ValueTarget()

self.assertFalse(target.multipart_filename)

parser = StreamingFormDataParser(
headers={'Content-Type': content_type})
parser.register(filename, target)
parser.data_received(body)

self.assertEqual(target.multipart_filename, filename)

0 comments on commit 93018ef

Please sign in to comment.