fix issue384 by removing the trial support code

This commit is contained in:
Ronny Pfannschmidt 2013-11-19 10:58:24 +01:00
parent 1fd1617427
commit eda8b02a8d
3 changed files with 37 additions and 10 deletions

View File

@ -1,6 +1,10 @@
Unreleased Unreleased
----------------------------------- -----------------------------------
- fix issue384 by removing the trial support code
since the unittest compat enhancements allow
trial to handle it on its own
- fix pexpect-3.0 compatibility for pytest's own tests. - fix pexpect-3.0 compatibility for pytest's own tests.
(fixes issue386) (fixes issue386)

View File

@ -50,8 +50,6 @@ class UnitTestCase(pytest.Class):
x = getattr(self.obj, name) x = getattr(self.obj, name)
funcobj = getattr(x, 'im_func', x) funcobj = getattr(x, 'im_func', x)
transfer_markers(funcobj, cls, module) transfer_markers(funcobj, cls, module)
if hasattr(funcobj, 'todo'):
pytest.mark.xfail(reason=str(funcobj.todo))(funcobj)
yield TestCaseFunction(name, parent=self) yield TestCaseFunction(name, parent=self)
foundsomething = True foundsomething = True
@ -70,10 +68,6 @@ class TestCaseFunction(pytest.Function):
def setup(self): def setup(self):
self._testcase = self.parent.obj(self.name) self._testcase = self.parent.obj(self.name)
self._obj = getattr(self._testcase, self.name) self._obj = getattr(self._testcase, self.name)
if hasattr(self._testcase, 'skip'):
pytest.skip(self._testcase.skip)
if hasattr(self._obj, 'skip'):
pytest.skip(self._obj.skip)
if hasattr(self._testcase, 'setup_method'): if hasattr(self._testcase, 'setup_method'):
self._testcase.setup_method(self._obj) self._testcase.setup_method(self._obj)
if hasattr(self, "_request"): if hasattr(self, "_request"):

View File

@ -310,9 +310,10 @@ def test_module_level_pytestmark(testdir):
reprec.assertoutcome(skipped=1) reprec.assertoutcome(skipped=1)
def test_testcase_skip_property(testdir): def test_trial_testcase_skip_property(testdir):
testpath = testdir.makepyfile(""" testpath = testdir.makepyfile("""
import unittest from twisted.trial import unittest
class MyTestCase(unittest.TestCase): class MyTestCase(unittest.TestCase):
skip = 'dont run' skip = 'dont run'
def test_func(self): def test_func(self):
@ -321,9 +322,11 @@ def test_testcase_skip_property(testdir):
reprec = testdir.inline_run(testpath, "-s") reprec = testdir.inline_run(testpath, "-s")
reprec.assertoutcome(skipped=1) reprec.assertoutcome(skipped=1)
def test_testfunction_skip_property(testdir):
def test_trial_testfunction_skip_property(testdir):
pytest.importorskip('twisted.trial.unittest')
testpath = testdir.makepyfile(""" testpath = testdir.makepyfile("""
import unittest from twisted.trial import unittest
class MyTestCase(unittest.TestCase): class MyTestCase(unittest.TestCase):
def test_func(self): def test_func(self):
pass pass
@ -333,6 +336,32 @@ def test_testfunction_skip_property(testdir):
reprec.assertoutcome(skipped=1) reprec.assertoutcome(skipped=1)
def test_trial_testcase_todo_property(testdir):
testpath = testdir.makepyfile("""
from twisted.trial import unittest
class MyTestCase(unittest.TestCase):
todo = 'dont run'
def test_func(self):
assert 0
""")
reprec = testdir.inline_run(testpath, "-s")
reprec.assertoutcome(skipped=1)
def test_trial_testfunction_todo_property(testdir):
pytest.importorskip('twisted.trial.unittest')
testpath = testdir.makepyfile("""
from twisted.trial import unittest
class MyTestCase(unittest.TestCase):
def test_func(self):
assert 0
test_func.todo = 'dont run'
""")
reprec = testdir.inline_run(testpath, "-s")
reprec.assertoutcome(skipped=1)
class TestTrialUnittest: class TestTrialUnittest:
def setup_class(cls): def setup_class(cls):
cls.ut = pytest.importorskip("twisted.trial.unittest") cls.ut = pytest.importorskip("twisted.trial.unittest")