DEFAULT_CA_BUNDLE_PATH)
from .compat import (
cookielib, urlparse, urlunparse, urljoin, urlsplit, urlencode, str, bytes,
- is_py2)
+ StringIO, is_py2)
# Import chardet if it is available.
try:
else:
fn = guess_filename(v) or k
fp = v
+ if isinstance(fp, bytes):
+ fp = StringIO(fp)
fields.update({k: (fn, fp.read())})
(body, content_type) = encode_multipart_formdata(fields)
self.assertEqual(post2.status_code, 200)
+ def test_POSTBIN_GET_POST_FILES_STRINGS(self):
+
+ for service in SERVICES:
+
+ url = service('post')
+
+ post1 = post(url, files={'fname.txt': 'fdata'})
+ self.assertEqual(post1.status_code, 200)
+
+ post2 = post(url, files={'fname.txt': 'fdata', 'fname2.txt':'more fdata'})
+ self.assertEqual(post2.status_code, 200)
+
+ post3 = post(url, files={'fname.txt': 'fdata', 'fname2.txt':open(__file__,'rb')})
+ self.assertEqual(post3.status_code, 200)
+
def test_nonzero_evaluation(self):
for service in SERVICES: