summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Chan <alex@alexwlchan.net>2017-06-05 12:26:09 +0100
committerAlex Chan <alex@alexwlchan.net>2017-06-05 12:26:09 +0100
commit0c43030e210de912f66dcd148de4be0a42bf3dbe (patch)
treebae6f165f6527fbf67e764965670da02c1f1e537
parent8e0edf4185cd5d9e7d91a1cb4f674c3aaffbadb2 (diff)
downloadurllib3-0c43030e210de912f66dcd148de4be0a42bf3dbe.tar.gz
Rewrite test_filepost.py to be pytest-style
-rw-r--r--test/test_filepost.py90
1 files changed, 41 insertions, 49 deletions
diff --git a/test/test_filepost.py b/test/test_filepost.py
index f744a96e..ddf12093 100644
--- a/test/test_filepost.py
+++ b/test/test_filepost.py
@@ -1,4 +1,4 @@
-import unittest
+import pytest
from urllib3.filepost import encode_multipart_formdata, iter_fields
from urllib3.fields import RequestField
@@ -8,60 +8,55 @@ from urllib3.packages.six import b, u
BOUNDARY = '!! test boundary !!'
-class TestIterfields(unittest.TestCase):
+class TestIterfields(object):
def test_dict(self):
for fieldname, value in iter_fields(dict(a='b')):
- self.assertEqual((fieldname, value), ('a', 'b'))
+ assert (fieldname, value) == ('a', 'b')
- self.assertEqual(
- list(sorted(iter_fields(dict(a='b', c='d')))),
+ assert (
+ list(sorted(iter_fields(dict(a='b', c='d')))) ==
[('a', 'b'), ('c', 'd')])
def test_tuple_list(self):
for fieldname, value in iter_fields([('a', 'b')]):
- self.assertEqual((fieldname, value), ('a', 'b'))
+ assert (fieldname, value) == ('a', 'b')
- self.assertEqual(
- list(iter_fields([('a', 'b'), ('c', 'd')])),
+ assert (
+ list(iter_fields([('a', 'b'), ('c', 'd')])) ==
[('a', 'b'), ('c', 'd')])
-class TestMultipartEncoding(unittest.TestCase):
+class TestMultipartEncoding(object):
- def test_input_datastructures(self):
- fieldsets = [
- dict(k='v', k2='v2'),
- [('k', 'v'), ('k2', 'v2')],
- ]
+ @pytest.mark.parametrize('fields', [
+ dict(k='v', k2='v2'),
+ [('k', 'v'), ('k2', 'v2')],
+ ])
+ def test_input_datastructures(self, fields):
+ encoded, _ = encode_multipart_formdata(fields, boundary=BOUNDARY)
+ assert encoded.count(b(BOUNDARY)) == 3
- for fields in fieldsets:
- encoded, _ = encode_multipart_formdata(fields, boundary=BOUNDARY)
- self.assertEqual(encoded.count(b(BOUNDARY)), 3)
-
- def test_field_encoding(self):
- fieldsets = [
- [('k', 'v'), ('k2', 'v2')],
- [('k', b'v'), (u('k2'), b'v2')],
- [('k', b'v'), (u('k2'), 'v2')],
- ]
-
- for fields in fieldsets:
- encoded, content_type = encode_multipart_formdata(fields, boundary=BOUNDARY)
- expected = (b'--' + b(BOUNDARY) + b'\r\n'
- b'Content-Disposition: form-data; name="k"\r\n'
- b'\r\n'
- b'v\r\n'
- b'--' + b(BOUNDARY) + b'\r\n'
- b'Content-Disposition: form-data; name="k2"\r\n'
- b'\r\n'
- b'v2\r\n'
- b'--' + b(BOUNDARY) + b'--\r\n')
+ @pytest.mark.parametrize('fields', [
+ [('k', 'v'), ('k2', 'v2')],
+ [('k', b'v'), (u('k2'), b'v2')],
+ [('k', b'v'), (u('k2'), 'v2')],
+ ])
+ def test_field_encoding(self, fields):
+ encoded, content_type = encode_multipart_formdata(fields, boundary=BOUNDARY)
+ expected = (b'--' + b(BOUNDARY) + b'\r\n'
+ b'Content-Disposition: form-data; name="k"\r\n'
+ b'\r\n'
+ b'v\r\n'
+ b'--' + b(BOUNDARY) + b'\r\n'
+ b'Content-Disposition: form-data; name="k2"\r\n'
+ b'\r\n'
+ b'v2\r\n'
+ b'--' + b(BOUNDARY) + b'--\r\n')
- self.assertEqual(encoded, expected, fields)
+ assert encoded == expected
- self.assertEqual(content_type,
- 'multipart/form-data; boundary=' + str(BOUNDARY))
+ assert content_type == 'multipart/form-data; boundary=' + str(BOUNDARY)
def test_filename(self):
fields = [('k', ('somename', b'v'))]
@@ -74,10 +69,9 @@ class TestMultipartEncoding(unittest.TestCase):
b'v\r\n'
b'--' + b(BOUNDARY) + b'--\r\n')
- self.assertEqual(encoded, expected)
+ assert encoded == expected
- self.assertEqual(content_type,
- 'multipart/form-data; boundary=' + str(BOUNDARY))
+ assert content_type == 'multipart/form-data; boundary=' + str(BOUNDARY)
def test_textplain(self):
fields = [('k', ('somefile.txt', b'v'))]
@@ -90,10 +84,9 @@ class TestMultipartEncoding(unittest.TestCase):
b'v\r\n'
b'--' + b(BOUNDARY) + b'--\r\n')
- self.assertEqual(encoded, expected)
+ assert encoded == expected
- self.assertEqual(content_type,
- 'multipart/form-data; boundary=' + str(BOUNDARY))
+ assert content_type == 'multipart/form-data; boundary=' + str(BOUNDARY)
def test_explicit(self):
fields = [('k', ('somefile.txt', b'v', 'image/jpeg'))]
@@ -106,10 +99,9 @@ class TestMultipartEncoding(unittest.TestCase):
b'v\r\n'
b'--' + b(BOUNDARY) + b'--\r\n')
- self.assertEqual(encoded, expected)
+ assert encoded == expected
- self.assertEqual(content_type,
- 'multipart/form-data; boundary=' + str(BOUNDARY))
+ assert content_type == 'multipart/form-data; boundary=' + str(BOUNDARY)
def test_request_fields(self):
fields = [RequestField('k', b'v',
@@ -123,4 +115,4 @@ class TestMultipartEncoding(unittest.TestCase):
b'v\r\n'
b'--' + b(BOUNDARY) + b'--\r\n')
- self.assertEqual(encoded, expected)
+ assert encoded == expected