Fix usages of py.io.saferepr

This commit is contained in:
Anthony Sottile
2019-01-20 10:45:12 -08:00
parent 095ce2ca7f
commit 0c6ca0da62
8 changed files with 27 additions and 25 deletions

View File

@@ -19,6 +19,7 @@ import atomicwrites
import py
import six
from _pytest._io.saferepr import saferepr
from _pytest.assertion import util
from _pytest.compat import spec_from_file_location
from _pytest.pathlib import fnmatch_ex
@@ -484,7 +485,7 @@ def _saferepr(obj):
JSON reprs.
"""
r = py.io.saferepr(obj)
r = saferepr(obj)
# only occurs in python2.x, repr must return text in python3+
if isinstance(r, bytes):
# Represent unprintable bytes as `\x##`
@@ -503,7 +504,7 @@ def _format_assertmsg(obj):
For strings this simply replaces newlines with '\n~' so that
util.format_explanation() will preserve them instead of escaping
newlines. For other objects py.io.saferepr() is used first.
newlines. For other objects saferepr() is used first.
"""
# reprlib appears to have a bug which means that if a string
@@ -512,7 +513,7 @@ def _format_assertmsg(obj):
# However in either case we want to preserve the newline.
replaces = [(u"\n", u"\n~"), (u"%", u"%%")]
if not isinstance(obj, six.string_types):
obj = py.io.saferepr(obj)
obj = saferepr(obj)
replaces.append((u"\\n", u"\n~"))
if isinstance(obj, bytes):
@@ -753,7 +754,7 @@ class AssertionRewriter(ast.NodeVisitor):
return ast.Name(name, ast.Load())
def display(self, expr):
"""Call py.io.saferepr on the expression."""
"""Call saferepr on the expression."""
return self.helper("saferepr", expr)
def helper(self, name, *args):