Move all tests to test_pytest_assertion
The py.code code is independent of any py.test specifics so we should avoid creating dependencies on py.test in those parts. --HG-- branch : trunk
This commit is contained in:
parent
0af90e0962
commit
abab8f6f63
|
@ -1,44 +0,0 @@
|
||||||
import sys
|
|
||||||
|
|
||||||
import py
|
|
||||||
from py._code._assertionnew import interpret
|
|
||||||
|
|
||||||
|
|
||||||
def getframe():
|
|
||||||
"""Return the frame of the caller as a py.code.Frame object"""
|
|
||||||
return py.code.Frame(sys._getframe(1))
|
|
||||||
|
|
||||||
|
|
||||||
def pytest_funcarg__hook(request):
|
|
||||||
class MockHook(object):
|
|
||||||
def __init__(self):
|
|
||||||
self.called = False
|
|
||||||
self.args = tuple()
|
|
||||||
self.kwargs = dict()
|
|
||||||
|
|
||||||
def __call__(self, op, left, right):
|
|
||||||
self.called = True
|
|
||||||
self.op = op
|
|
||||||
self.left = left
|
|
||||||
self.right = right
|
|
||||||
return MockHook()
|
|
||||||
|
|
||||||
|
|
||||||
def test_pytest_assert_compare_called(monkeypatch, hook):
|
|
||||||
monkeypatch.setattr(py._plugin.pytest_assertion,
|
|
||||||
'pytest_assert_compare', hook)
|
|
||||||
interpret('assert 0 == 1', getframe())
|
|
||||||
assert hook.called
|
|
||||||
|
|
||||||
|
|
||||||
def test_pytest_assert_compare_args(monkeypatch, hook):
|
|
||||||
print hook.called
|
|
||||||
monkeypatch.setattr(py._plugin.pytest_assertion,
|
|
||||||
'pytest_assert_compare', hook)
|
|
||||||
interpret('assert [0, 1] == [0, 2]', getframe())
|
|
||||||
print hook.called
|
|
||||||
print hook.left
|
|
||||||
print hook.right
|
|
||||||
assert hook.op == '=='
|
|
||||||
assert hook.left == [0, 1]
|
|
||||||
assert hook.right == [0, 2]
|
|
|
@ -1,7 +1,30 @@
|
||||||
|
import sys
|
||||||
|
|
||||||
import py
|
import py
|
||||||
|
from py._code._assertionnew import interpret
|
||||||
import py._plugin.pytest_assertion as plugin
|
import py._plugin.pytest_assertion as plugin
|
||||||
|
|
||||||
|
|
||||||
|
def getframe():
|
||||||
|
"""Return the frame of the caller as a py.code.Frame object"""
|
||||||
|
return py.code.Frame(sys._getframe(1))
|
||||||
|
|
||||||
|
|
||||||
|
def pytest_funcarg__hook(request):
|
||||||
|
class MockHook(object):
|
||||||
|
def __init__(self):
|
||||||
|
self.called = False
|
||||||
|
self.args = tuple()
|
||||||
|
self.kwargs = dict()
|
||||||
|
|
||||||
|
def __call__(self, op, left, right):
|
||||||
|
self.called = True
|
||||||
|
self.op = op
|
||||||
|
self.left = left
|
||||||
|
self.right = right
|
||||||
|
return MockHook()
|
||||||
|
|
||||||
|
|
||||||
def test_functional(testdir):
|
def test_functional(testdir):
|
||||||
testdir.makepyfile("""
|
testdir.makepyfile("""
|
||||||
def test_hello():
|
def test_hello():
|
||||||
|
@ -54,7 +77,27 @@ def test_traceback_failure(testdir):
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
class Test_pytest_assert_compare:
|
def test_pytest_assert_compare_called(monkeypatch, hook):
|
||||||
|
monkeypatch.setattr(py._plugin.pytest_assertion,
|
||||||
|
'pytest_assert_compare', hook)
|
||||||
|
interpret('assert 0 == 1', getframe())
|
||||||
|
assert hook.called
|
||||||
|
|
||||||
|
|
||||||
|
def test_pytest_assert_compare_args(monkeypatch, hook):
|
||||||
|
print hook.called
|
||||||
|
monkeypatch.setattr(py._plugin.pytest_assertion,
|
||||||
|
'pytest_assert_compare', hook)
|
||||||
|
interpret('assert [0, 1] == [0, 2]', getframe())
|
||||||
|
print hook.called
|
||||||
|
print hook.left
|
||||||
|
print hook.right
|
||||||
|
assert hook.op == '=='
|
||||||
|
assert hook.left == [0, 1]
|
||||||
|
assert hook.right == [0, 2]
|
||||||
|
|
||||||
|
|
||||||
|
class TestAssertCompare:
|
||||||
def test_different_types(self):
|
def test_different_types(self):
|
||||||
assert plugin.pytest_assert_compare('==', [0, 1], 'foo') is None
|
assert plugin.pytest_assert_compare('==', [0, 1], 'foo') is None
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue