Make escape_control_characters handle strings on Py2

This commit is contained in:
Shadab Zafar 2016-07-09 12:57:55 +05:30
parent bd58230178
commit 83a1cc5a9a
2 changed files with 5 additions and 4 deletions

View File

@ -57,8 +57,8 @@ def escape_control_characters(text, keep_spacing=True):
Args:
keep_spacing: If True, tabs and newlines will not be replaced.
"""
# type: (six.text_type) -> six.text_type
if not isinstance(text, six.text_type):
# type: (six.string_types) -> six.text_type
if not isinstance(text, six.string_types):
raise ValueError("text type must be unicode but is {}".format(type(text).__name__))
trans = _control_char_trans_newline if keep_spacing else _control_char_trans

View File

@ -38,6 +38,7 @@ def test_escape_control_characters():
u'=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~.'
)
if not six.PY2:
with tutils.raises(ValueError):
strutils.escape_control_characters(b"foo")