test/testing/test_doctest.py - line 23
|
def test_simple_docteststring_failing(): |
testitem = DoctestText(name="dummy2", parent=None) |
testitem._setcontent(""" |
>>> i = 0 |
>>> i + 1 |
2 |
""") |
-> py.test.raises(Failed, "testitem.run()") | |
test/raises.py - line 20
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 | |
def raises(ExpectedException, *args, **kwargs): |
""" raise AssertionError, if target code does not raise the expected |
exception. |
""" |
assert args |
__tracebackhide__ = True |
if isinstance(args[0], str): |
expr, = args |
assert isinstance(expr, str) |
frame = sys._getframe(1) |
loc = frame.f_locals.copy() |
loc.update(kwargs) |
|
source = py.code.Source(expr) |
try: |
-> exec source.compile() in frame.f_globals, loc |
|
|
|
except ExpectedException: |
return py.code.ExceptionInfo() |
else: |
func = args[0] |
assert callable |
try: |
func(*args[1:], **kwargs) |
|
except ExpectedException: |
return py.code.ExceptionInfo() |
k = ", ".join(["%s=%r" % x for x in kwargs.items()]) |
if k: |
k = ', ' + k |
expr = '%s(%r%s)' %(func.__name__, args, k) |
raise ExceptionFailure(msg="DID NOT RAISE", |
expr=args, expected=ExpectedException) | |
None</build/buildd/codespeak-lib-0.9.1/py/test/raises.py:20> - line 1
test/doctest.py - line 26
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 | |
def run(self): |
mod = py.std.types.ModuleType(self.name) |
|
|
|
|
|
|
-> self.execute(mod, self._content) | |
test/doctest.py - line 30
|
def execute(self, mod, docstring): |
mod.__doc__ = docstring |
-> failed, tot = py.compat.doctest.testmod(mod, verbose=1) |
if failed: |
py.test.fail("doctest %s: %s failed out of %s" %( |
self.fspath, failed, tot)) | |