utils.guess_filename fails if the given parameter looks like a file object but has a non-string name attribute

e.g. a cherrypy uploaded file behave like a regular file, except that its name attribute is an int and passing it directly to requests fails because of that
This commit is contained in:
Arthur Darcet
2014-12-12 16:11:32 +01:00
parent e23bf10cf4
commit e8d02ea0bb
3 changed files with 10 additions and 1 deletions
+8
View File
@@ -928,6 +928,14 @@ class RequestsTestCase(unittest.TestCase):
assert 'multipart/form-data' in p.headers['Content-Type']
def test_can_send_file_object_with_non_string_filename(self):
f = io.BytesIO()
f.name = 2
r = requests.Request('POST', httpbin('post'), files={'f': f})
p = r.prepare()
assert 'multipart/form-data' in p.headers['Content-Type']
def test_autoset_header_values_are_native(self):
data = 'this is a string'
length = '16'