diff --git a/doc/en/faq.txt b/doc/en/faq.txt index b4312ac12..2f7bd17d2 100644 --- a/doc/en/faq.txt +++ b/doc/en/faq.txt @@ -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 -`_ plugin which allows to -return deferreds from pytest-style tests, allowing to use +`_ 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 `_. 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 `. 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). diff --git a/testing/test_doctest.py b/testing/test_doctest.py index aa1795874..80a861bfc 100644 --- a/testing/test_doctest.py +++ b/testing/test_doctest.py @@ -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: diff --git a/testing/test_pdb.py b/testing/test_pdb.py index cc1f1e10e..f0cf2b333 100644 --- a/testing/test_pdb.py +++ b/testing/test_pdb.py @@ -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