urllib.urlparse: test_urlparse: Adapt for uPy.

Disable: byte/str mix tests, unicode handling, plus namedtuple reflection.
pull/118/head
Paul Sokolovsky 2014-05-23 02:16:15 +03:00
rodzic f5a9ad2d61
commit b2b2279561
1 zmienionych plików z 11 dodań i 11 usunięć

Wyświetl plik

@ -656,7 +656,7 @@ class UrlParseTestCase(unittest.TestCase):
self.assertEqual(urllib.parse.urlparse(b"x-newscheme://foo.com/stuff?query"),
(b'x-newscheme', b'foo.com', b'/stuff', b'', b'query', b''))
def test_mixed_types_rejected(self):
def _test_mixed_types_rejected(self):
# Several functions that process either strings or ASCII encoded bytes
# accept multiple arguments. Check they reject mixed type input
with self.assertRaisesRegex(TypeError, "Cannot mix str"):
@ -680,8 +680,8 @@ class UrlParseTestCase(unittest.TestCase):
with self.assertRaisesRegex(TypeError, "Cannot mix str"):
urllib.parse.urljoin(b"http://python.org", "http://python.org")
def _check_result_type(self, str_type):
num_args = len(str_type._fields)
def _check_result_type(self, str_type, num_args):
# num_args = len(str_type._fields)
bytes_type = str_type._encoded_counterpart
self.assertIs(bytes_type._decoded_counterpart, str_type)
str_args = ('',) * num_args
@ -708,14 +708,14 @@ class UrlParseTestCase(unittest.TestCase):
def test_result_pairs(self):
# Check encoding and decoding between result pairs
result_types = [
urllib.parse.DefragResult,
urllib.parse.SplitResult,
urllib.parse.ParseResult,
(urllib.parse.DefragResult, 2),
(urllib.parse.SplitResult, 5),
(urllib.parse.ParseResult, 6),
]
for result_type in result_types:
self._check_result_type(result_type)
self._check_result_type(*result_type)
def test_parse_qs_encoding(self):
def _test_parse_qs_encoding(self):
result = urllib.parse.parse_qs("key=\u0141%E9", encoding="latin-1")
self.assertEqual(result, {'key': ['\u0141\xE9']})
result = urllib.parse.parse_qs("key=\u0141%C3%A9", encoding="utf-8")
@ -728,7 +728,7 @@ class UrlParseTestCase(unittest.TestCase):
errors="ignore")
self.assertEqual(result, {'key': ['\u0141-']})
def test_parse_qsl_encoding(self):
def _test_parse_qsl_encoding(self):
result = urllib.parse.parse_qsl("key=\u0141%E9", encoding="latin-1")
self.assertEqual(result, [('key', '\u0141\xE9')])
result = urllib.parse.parse_qsl("key=\u0141%C3%A9", encoding="utf-8")
@ -776,8 +776,8 @@ class UrlParseTestCase(unittest.TestCase):
def test_to_bytes(self):
result = urllib.parse.to_bytes('http://www.python.org')
self.assertEqual(result, 'http://www.python.org')
self.assertRaises(UnicodeError, urllib.parse.to_bytes,
'http://www.python.org/medi\u00e6val')
# self.assertRaises(UnicodeError, urllib.parse.to_bytes,
# 'http://www.python.org/medi\u00e6val')
def test_urlencode_sequences(self):
# Other tests incidentally urlencode things; test non-covered cases: