Removed an untested and broken branch in force_bytes() (refs #6353).
The new test crashed in the removed branch. It's unclear if the branch has
value since c6a2bd9b96
didn't include tests.
This commit is contained in:
parent
4ee877a7b0
commit
26619ad7b0
|
@ -108,19 +108,8 @@ def force_bytes(s, encoding='utf-8', strings_only=False, errors='strict'):
|
|||
return s
|
||||
if isinstance(s, memoryview):
|
||||
return bytes(s)
|
||||
if isinstance(s, Promise):
|
||||
if isinstance(s, Promise) or not isinstance(s, str):
|
||||
return str(s).encode(encoding, errors)
|
||||
if not isinstance(s, str):
|
||||
try:
|
||||
return str(s).encode(encoding)
|
||||
except UnicodeEncodeError:
|
||||
if isinstance(s, Exception):
|
||||
# An Exception subclass containing non-ASCII data that doesn't
|
||||
# know how to print itself properly. We shouldn't raise a
|
||||
# further exception.
|
||||
return b' '.join(force_bytes(arg, encoding, strings_only, errors)
|
||||
for arg in s)
|
||||
return str(s).encode(encoding, errors)
|
||||
else:
|
||||
return s.encode(encoding, errors)
|
||||
|
||||
|
|
|
@ -42,8 +42,8 @@ class TestEncodingUtils(SimpleTestCase):
|
|||
"""
|
||||
error_msg = "This is an exception, voilà"
|
||||
exc = ValueError(error_msg)
|
||||
result = force_bytes(exc)
|
||||
self.assertEqual(result, error_msg.encode('utf-8'))
|
||||
self.assertEqual(force_bytes(exc), error_msg.encode('utf-8'))
|
||||
self.assertEqual(force_bytes(exc, encoding='ascii', errors='ignore'), b'This is an exception, voil')
|
||||
|
||||
def test_force_bytes_strings_only(self):
|
||||
today = datetime.date.today()
|
||||
|
|
Loading…
Reference in New Issue