merge
This commit is contained in:
commit
f1c9554f42
|
@ -30,15 +30,15 @@ and does not handle Deferreds returned from a test in pytest style.
|
|||
If you are using trial's unittest.TestCase chances are that you can
|
||||
just run your tests even if you return Deferreds. In addition,
|
||||
there also is a dedicated `pytest-twisted
|
||||
<http://pypi.python.org/pypi/pytest-twisted>`_ plugin which allows to
|
||||
return deferreds from pytest-style tests, allowing to use
|
||||
<http://pypi.python.org/pypi/pytest-twisted>`_ plugin which allows you to
|
||||
return deferreds from pytest-style tests, allowing the use of
|
||||
:ref:`fixtures` and other features.
|
||||
|
||||
how does pytest work with Django?
|
||||
++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
In 2012, some work is going into the `pytest-django plugin <http://pypi.python.org/pypi/pytest-django>`_. It substitutes the usage of Django's
|
||||
``manage.py test`` and allows to use all pytest features_ most of which
|
||||
``manage.py test`` and allows the use of all pytest features_ most of which
|
||||
are not available from Django directly.
|
||||
|
||||
.. _features: features.html
|
||||
|
@ -49,7 +49,7 @@ What's this "magic" with pytest? (historic notes)
|
|||
|
||||
Around 2007 (version ``0.8``) some people thought that ``pytest``
|
||||
was using too much "magic". It had been part of the `pylib`_ which
|
||||
contains a lot of unreleated python library code. Around 2010 there
|
||||
contains a lot of unrelated python library code. Around 2010 there
|
||||
was a major cleanup refactoring, which removed unused or deprecated code
|
||||
and resulted in the new ``pytest`` PyPI package which strictly contains
|
||||
only test-related code. This release also brought a complete pluginification
|
||||
|
@ -63,7 +63,7 @@ A second "magic" issue was the assert statement debugging feature.
|
|||
Nowadays, ``pytest`` explicitely rewrites assert statements in test modules
|
||||
in order to provide more useful :ref:`assert feedback <assertfeedback>`.
|
||||
This completely avoids previous issues of confusing assertion-reporting.
|
||||
It also means, that you can use Python's ``-O`` optimization without loosing
|
||||
It also means, that you can use Python's ``-O`` optimization without losing
|
||||
assertions in test modules.
|
||||
|
||||
``pytest`` contains a second, mostly obsolete, assert debugging technique,
|
||||
|
@ -152,13 +152,13 @@ pytest interaction with other packages
|
|||
Issues with pytest, multiprocess and setuptools?
|
||||
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
On windows the multiprocess package will instantiate sub processes
|
||||
On Windows the multiprocess package will instantiate sub processes
|
||||
by pickling and thus implicitly re-import a lot of local modules.
|
||||
Unfortunately, setuptools-0.6.11 does not ``if __name__=='__main__'``
|
||||
protect its generated command line script. This leads to infinite
|
||||
recursion when running a test that instantiates Processes.
|
||||
|
||||
As of middle 2013, there shouldn't be a problem anymore when you
|
||||
As of mid-2013, there shouldn't be a problem anymore when you
|
||||
use the standard setuptools (note that distribute has been merged
|
||||
back into setuptools which is now shipped directly with virtualenv).
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ import py, pytest
|
|||
|
||||
import pdb
|
||||
|
||||
xfail_if_pdbpp_installed = pytest.mark.xfail(hasattr(pdb, "__author__"),
|
||||
reason="doctest/pdbpp problem: https://bitbucket.org/antocuni/pdb/issue/24/doctests-fail-when-pdbpp-is-installed", run=False)
|
||||
|
||||
class TestDoctests:
|
||||
|
||||
|
@ -161,7 +159,6 @@ class TestDoctests:
|
|||
reprec = testdir.inline_run(p, "--doctest-modules")
|
||||
reprec.assertoutcome(failed=1)
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_doctestmodule_external_and_issue116(self, testdir):
|
||||
p = testdir.mkpydir("hello")
|
||||
p.join("__init__.py").write(py.code.Source("""
|
||||
|
@ -201,7 +198,6 @@ class TestDoctests:
|
|||
"*test_txtfile_failing.txt:2: DocTestFailure"
|
||||
])
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_txtfile_with_fixtures(self, testdir):
|
||||
p = testdir.maketxtfile("""
|
||||
>>> dir = getfixture('tmpdir')
|
||||
|
@ -211,7 +207,6 @@ class TestDoctests:
|
|||
reprec = testdir.inline_run(p, )
|
||||
reprec.assertoutcome(passed=1)
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_txtfile_with_usefixtures_in_ini(self, testdir):
|
||||
testdir.makeini("""
|
||||
[pytest]
|
||||
|
@ -232,7 +227,6 @@ class TestDoctests:
|
|||
reprec = testdir.inline_run(p, )
|
||||
reprec.assertoutcome(passed=1)
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_doctestmodule_with_fixtures(self, testdir):
|
||||
p = testdir.makepyfile("""
|
||||
'''
|
||||
|
@ -244,7 +238,6 @@ class TestDoctests:
|
|||
reprec = testdir.inline_run(p, "--doctest-modules")
|
||||
reprec.assertoutcome(passed=1)
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_doctestmodule_three_tests(self, testdir):
|
||||
p = testdir.makepyfile("""
|
||||
'''
|
||||
|
@ -270,7 +263,6 @@ class TestDoctests:
|
|||
reprec = testdir.inline_run(p, "--doctest-modules")
|
||||
reprec.assertoutcome(passed=3)
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_doctestmodule_two_tests_one_fail(self, testdir):
|
||||
p = testdir.makepyfile("""
|
||||
class MyClass:
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
import py
|
||||
import sys
|
||||
|
||||
from test_doctest import xfail_if_pdbpp_installed
|
||||
|
||||
class TestPDB:
|
||||
def pytest_funcarg__pdblist(self, request):
|
||||
|
@ -187,7 +186,6 @@ class TestPDB:
|
|||
if child.isalive():
|
||||
child.wait()
|
||||
|
||||
@xfail_if_pdbpp_installed
|
||||
def test_pdb_interaction_doctest(self, testdir):
|
||||
p1 = testdir.makepyfile("""
|
||||
import pytest
|
||||
|
|
Loading…
Reference in New Issue