Make pytest_assert_binrepr work on python3 too
--HG-- branch : trunk
This commit is contained in:
parent
4b2cb3acbe
commit
56b955dfb5
|
@ -33,6 +33,13 @@ def warn_about_missing_assertion():
|
||||||
" (are you using python -O?)")
|
" (are you using python -O?)")
|
||||||
|
|
||||||
|
|
||||||
|
# Provide basestring in python3
|
||||||
|
try:
|
||||||
|
basestring = basestring
|
||||||
|
except NameError:
|
||||||
|
basestring = str
|
||||||
|
|
||||||
|
|
||||||
def pytest_assert_binrepr(op, left, right):
|
def pytest_assert_binrepr(op, left, right):
|
||||||
"""Make specialised explanations for some operators/operands"""
|
"""Make specialised explanations for some operators/operands"""
|
||||||
left_repr = py.io.saferepr(left, maxsize=30)
|
left_repr = py.io.saferepr(left, maxsize=30)
|
||||||
|
@ -72,7 +79,7 @@ def pytest_assert_binrepr(op, left, right):
|
||||||
|
|
||||||
def _compare_eq_sequence(left, right):
|
def _compare_eq_sequence(left, right):
|
||||||
explanation = []
|
explanation = []
|
||||||
for i in xrange(min(len(left), len(right))):
|
for i in range(min(len(left), len(right))):
|
||||||
if left[i] != right[i]:
|
if left[i] != right[i]:
|
||||||
explanation += ['First differing item %s: %s != %s' %
|
explanation += ['First differing item %s: %s != %s' %
|
||||||
(i, left[i], right[i])]
|
(i, left[i], right[i])]
|
||||||
|
|
|
@ -85,13 +85,9 @@ def test_pytest_assert_binrepr_called(monkeypatch, hook):
|
||||||
|
|
||||||
|
|
||||||
def test_pytest_assert_binrepr_args(monkeypatch, hook):
|
def test_pytest_assert_binrepr_args(monkeypatch, hook):
|
||||||
print hook.called
|
|
||||||
monkeypatch.setattr(py._plugin.pytest_assertion,
|
monkeypatch.setattr(py._plugin.pytest_assertion,
|
||||||
'pytest_assert_binrepr', hook)
|
'pytest_assert_binrepr', hook)
|
||||||
interpret('assert [0, 1] == [0, 2]', getframe())
|
interpret('assert [0, 1] == [0, 2]', getframe())
|
||||||
print hook.called
|
|
||||||
print hook.left
|
|
||||||
print hook.right
|
|
||||||
assert hook.op == '=='
|
assert hook.op == '=='
|
||||||
assert hook.left == [0, 1]
|
assert hook.left == [0, 1]
|
||||||
assert hook.right == [0, 2]
|
assert hook.right == [0, 2]
|
||||||
|
|
Loading…
Reference in New Issue