From 3815c1afc97501a0df0f853dcfbead4fa9befcc6 Mon Sep 17 00:00:00 2001 From: hpk Date: Tue, 17 Mar 2009 08:11:18 +0100 Subject: [PATCH] [svn r62983] forgot to add traceback cutting tests long time ago, i guess --HG-- branch : trunk --- py/test/testing/test_traceback.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 py/test/testing/test_traceback.py diff --git a/py/test/testing/test_traceback.py b/py/test/testing/test_traceback.py new file mode 100644 index 000000000..2527aaa90 --- /dev/null +++ b/py/test/testing/test_traceback.py @@ -0,0 +1,29 @@ +import py + +class TestTracebackCutting: + def test_skip_simple(self): + from py.__.test.outcome import Skipped + excinfo = py.test.raises(Skipped, 'py.test.skip("xxx")') + assert excinfo.traceback[-1].frame.code.name == "skip" + assert excinfo.traceback[-1].ishidden() + + def test_traceback_argsetup(self, testdir): + testdir.makeconftest(""" + class ConftestPlugin: + def pytest_pyfuncarg_hello(self, pyfuncitem): + raise ValueError("xyz") + """) + p = testdir.makepyfile("def test(hello): pass") + result = testdir.runpytest(p) + assert result.ret != 0 + out = result.stdout.str() + assert out.find("xyz") != -1 + assert out.find("conftest.py:3: ValueError") != -1 + numentries = out.count("_ _ _") # separator for traceback entries + assert numentries == 0 + + result = testdir.runpytest("--fulltrace", p) + out = result.stdout.str() + assert out.find("conftest.py:3: ValueError") != -1 + numentries = out.count("_ _ _ _") # separator for traceback entries + assert numentries >3