[Python-modules-commits] [pytest] 01/06: Import pytest_3.0.2.orig.tar.gz
Sebastian Ramacher
sramacher at moszumanska.debian.org
Sat Sep 3 09:19:26 UTC 2016
This is an automated email from the git hooks/post-receive script.
sramacher pushed a commit to branch master
in repository pytest.
commit 20e0c867d27699949650cbc04588df00ff973f6d
Author: Sebastian Ramacher <sramacher at debian.org>
Date: Sat Sep 3 11:10:48 2016 +0200
Import pytest_3.0.2.orig.tar.gz
---
AUTHORS | 3 +
CHANGELOG.rst | 40 +++++
PKG-INFO | 7 +-
README.rst | 5 +-
_pytest/__init__.py | 2 +-
_pytest/_code/code.py | 2 +-
_pytest/assertion/__init__.py | 6 +
_pytest/capture.py | 7 +
_pytest/config.py | 2 +
_pytest/debugging.py | 2 +-
_pytest/doctest.py | 2 +-
_pytest/python.py | 39 ++---
_pytest/unittest.py | 7 +-
doc/en/adopt.rst | 4 +
doc/en/announce/index.rst | 5 +-
doc/en/announce/release-2.9.1.rst | 2 +
doc/en/announce/release-2.9.2.rst | 7 +-
doc/en/announce/release-3.0.2.rst | 26 ++++
doc/en/announce/sprint2016.rst | 2 -
doc/en/assert.rst | 5 +-
doc/en/builtin.rst | 4 +-
doc/en/cache.rst | 10 +-
doc/en/capture.rst | 2 +-
doc/en/conf.py | 4 +-
doc/en/contents.rst | 29 +++-
doc/en/doctest.rst | 3 +-
doc/en/example/markers.rst | 28 ++--
doc/en/example/nonpython.rst | 6 +-
doc/en/example/parametrize.rst | 12 +-
doc/en/example/pythoncollection.rst | 6 +-
doc/en/example/reportingdemo.rst | 8 +-
doc/en/example/simple.rst | 122 ++++++++++-----
doc/en/feedback.rst | 8 -
doc/en/fixture.rst | 10 +-
doc/en/funcarg_compare.rst | 1 +
doc/en/getting-started.rst | 12 +-
doc/en/index.rst | 141 +++++++++++-------
doc/en/monkeypatch.rst | 21 ---
doc/en/nose.rst | 2 +
doc/en/overview.rst | 13 --
doc/en/parametrize.rst | 5 +-
doc/en/plugins.rst | 4 +-
doc/en/proposals/parametrize_with_fixtures.rst | 2 +
doc/en/recwarn.rst | 1 +
doc/en/skipping.rst | 2 +-
doc/en/status.rst | 5 -
doc/en/tmpdir.rst | 2 +-
doc/en/unittest.rst | 10 +-
doc/en/writing_plugins.rst | 6 +-
doc/en/xdist.rst | 197 -------------------------
doc/en/yieldfixture.rst | 2 +
pytest.egg-info/PKG-INFO | 7 +-
pytest.egg-info/SOURCES.txt | 5 +-
pytest.egg-info/requires.txt | 8 +-
setup.cfg | 4 +-
testing/python/metafunc.py | 12 ++
testing/test_assertion.py | 38 +++++
testing/test_capture.py | 22 +++
testing/test_pdb.py | 19 +++
tox.ini | 12 +-
60 files changed, 512 insertions(+), 468 deletions(-)
diff --git a/AUTHORS b/AUTHORS
index 2e487e7..c74aa4a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -5,6 +5,7 @@ Contributors include::
Abdeali JK
Abhijeet Kasurde
+Ahn Ki-Wook
Alexei Kozlenok
Anatoly Bubenkoff
Andreas Zeidler
@@ -69,6 +70,7 @@ Javier Domingo Cansino
Javier Romero
John Towler
Jon Sonesen
+Jordan Guymon
Joshua Bronson
Jurko Gospodnetić
Justyna Janczyszyn
@@ -89,6 +91,7 @@ Martin Prusse
Matt Bachmann
Matt Williams
Matthias Hafner
+mbyt
Michael Aquilina
Michael Birtwell
Michael Droettboom
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 0342b75..867ae6e 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,3 +1,43 @@
+3.0.2
+=====
+
+* Improve error message when passing non-string ids to ``pytest.mark.parametrize`` (`#1857`_).
+ Thanks `@okken`_ for the report and `@nicoddemus`_ for the PR.
+
+* Add ``buffer`` attribute to stdin stub class ``pytest.capture.DontReadFromInput``
+ Thanks `@joguSD`_ for the PR.
+
+* Fix ``UnicodeEncodeError`` when string comparison with unicode has failed. (`#1864`_)
+ Thanks `@AiOO`_ for the PR.
+
+* ``pytest_plugins`` is now handled correctly if defined as a string (as opposed as
+ a sequence of strings) when modules are considered for assertion rewriting.
+ Due to this bug, much more modules were being rewritten than necessary
+ if a test suite uses ``pytest_plugins`` to load internal plugins (`#1888`_).
+ Thanks `@jaraco`_ for the report and `@nicoddemus`_ for the PR (`#1891`_).
+
+* Do not call tearDown and cleanups when running tests from
+ ``unittest.TestCase`` subclasses with ``--pdb``
+ enabled. This allows proper post mortem debugging for all applications
+ which have significant logic in their tearDown machinery (`#1890`_). Thanks
+ `@mbyt`_ for the PR.
+
+* Fix use of deprecated ``getfuncargvalue`` method in the internal doctest plugin.
+ Thanks `@ViviCoder`_ for the report (`#1898`_).
+
+.. _ at joguSD: https://github.com/joguSD
+.. _ at AiOO: https://github.com/AiOO
+.. _ at mbyt: https://github.com/mbyt
+.. _ at ViviCoder: https://github.com/ViviCoder
+
+.. _#1857: https://github.com/pytest-dev/pytest/issues/1857
+.. _#1864: https://github.com/pytest-dev/pytest/issues/1864
+.. _#1888: https://github.com/pytest-dev/pytest/issues/1888
+.. _#1891: https://github.com/pytest-dev/pytest/pull/1891
+.. _#1890: https://github.com/pytest-dev/pytest/issues/1890
+.. _#1898: https://github.com/pytest-dev/pytest/issues/1898
+
+
3.0.1
=====
diff --git a/PKG-INFO b/PKG-INFO
index 50060de..651d580 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: pytest
-Version: 3.0.1
+Version: 3.0.2
Summary: pytest: simple powerful testing with Python
Home-page: http://pytest.org
Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others
@@ -43,7 +43,6 @@ Description: .. image:: http://docs.pytest.org/en/latest/_static/pytest1.png
$ pytest
======= test session starts ========
- platform linux -- Python 3.4.3, pytest-2.8.5, py-1.4.31, pluggy-0.3.1
collected 1 items
test_sample.py F
@@ -60,7 +59,7 @@ Description: .. image:: http://docs.pytest.org/en/latest/_static/pytest1.png
======= 1 failed in 0.12 seconds ========
- Due to ``py.test``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started <http://docs.pytest.org/en/latest/getting-started.html#our-first-test-run>`_ for more examples.
+ Due to ``pytest``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started <http://docs.pytest.org/en/latest/getting-started.html#our-first-test-run>`_ for more examples.
Features
@@ -72,7 +71,7 @@ Description: .. image:: http://docs.pytest.org/en/latest/_static/pytest1.png
<http://docs.pytest.org/en/latest/goodpractices.html#python-test-discovery>`_
of test modules and functions;
- - `Modular fixtures <http://docs.pytest.org/en/latest/fixture.html>`_ for
+ - `Modular fixtures <http://docs.pytest.org/en/latest/fixture.html>`_ for
managing small or parametrized long-lived test resources;
- Can run `unittest <http://docs.pytest.org/en/latest/unittest.html>`_ (or trial),
diff --git a/README.rst b/README.rst
index 521961f..6a5179e 100644
--- a/README.rst
+++ b/README.rst
@@ -35,7 +35,6 @@ To execute it::
$ pytest
======= test session starts ========
- platform linux -- Python 3.4.3, pytest-2.8.5, py-1.4.31, pluggy-0.3.1
collected 1 items
test_sample.py F
@@ -52,7 +51,7 @@ To execute it::
======= 1 failed in 0.12 seconds ========
-Due to ``py.test``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started <http://docs.pytest.org/en/latest/getting-started.html#our-first-test-run>`_ for more examples.
+Due to ``pytest``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started <http://docs.pytest.org/en/latest/getting-started.html#our-first-test-run>`_ for more examples.
Features
@@ -64,7 +63,7 @@ Features
<http://docs.pytest.org/en/latest/goodpractices.html#python-test-discovery>`_
of test modules and functions;
-- `Modular fixtures <http://docs.pytest.org/en/latest/fixture.html>`_ for
+- `Modular fixtures <http://docs.pytest.org/en/latest/fixture.html>`_ for
managing small or parametrized long-lived test resources;
- Can run `unittest <http://docs.pytest.org/en/latest/unittest.html>`_ (or trial),
diff --git a/_pytest/__init__.py b/_pytest/__init__.py
index 73704d9..757e560 100644
--- a/_pytest/__init__.py
+++ b/_pytest/__init__.py
@@ -1,2 +1,2 @@
#
-__version__ = '3.0.1'
+__version__ = '3.0.2'
diff --git a/_pytest/_code/code.py b/_pytest/_code/code.py
index 040e4fc..9a6d326 100644
--- a/_pytest/_code/code.py
+++ b/_pytest/_code/code.py
@@ -354,7 +354,7 @@ class ExceptionInfo(object):
if exprinfo is None and isinstance(tup[1], AssertionError):
exprinfo = getattr(tup[1], 'msg', None)
if exprinfo is None:
- exprinfo = str(tup[1])
+ exprinfo = py._builtin._totext(tup[1])
if exprinfo and exprinfo.startswith('assert '):
self._striptext = 'AssertionError: '
self._excinfo = tup
diff --git a/_pytest/assertion/__init__.py b/_pytest/assertion/__init__.py
index 3c42910..fd1ebe2 100644
--- a/_pytest/assertion/__init__.py
+++ b/_pytest/assertion/__init__.py
@@ -36,7 +36,13 @@ def register_assert_rewrite(*names):
Thus you should make sure to call this before the module is
actually imported, usually in your __init__.py if you are a plugin
using a package.
+
+ :raise TypeError: if the given module names are not strings.
"""
+ for name in names:
+ if not isinstance(name, str):
+ msg = 'expected module names as *args, got {0} instead'
+ raise TypeError(msg.format(repr(names)))
for hook in sys.meta_path:
if isinstance(hook, rewrite.AssertionRewritingHook):
importhook = hook
diff --git a/_pytest/capture.py b/_pytest/capture.py
index d58c729..9f60db6 100644
--- a/_pytest/capture.py
+++ b/_pytest/capture.py
@@ -455,6 +455,13 @@ class DontReadFromInput:
def close(self):
pass
+ @property
+ def buffer(self):
+ if sys.version_info >= (3,0):
+ return self
+ else:
+ raise AttributeError('redirected stdin has no attribute buffer')
+
def _readline_workaround():
"""
diff --git a/_pytest/config.py b/_pytest/config.py
index 2a12158..5b4654a 100644
--- a/_pytest/config.py
+++ b/_pytest/config.py
@@ -379,6 +379,8 @@ class PytestPluginManager(PluginManager):
def consider_module(self, mod):
plugins = getattr(mod, 'pytest_plugins', [])
+ if isinstance(plugins, str):
+ plugins = [plugins]
self.rewrite_hook.mark_rewrite(*plugins)
self._import_plugin_specs(plugins)
diff --git a/_pytest/debugging.py b/_pytest/debugging.py
index d8cd5a4..299b050 100644
--- a/_pytest/debugging.py
+++ b/_pytest/debugging.py
@@ -14,7 +14,7 @@ def pytest_addoption(parser):
group._addoption(
'--pdbcls', dest="usepdb_cls", metavar="modulename:classname",
help="start a custom interactive Python debugger on errors. "
- "For example: --pdbcls=IPython.core.debugger:Pdb")
+ "For example: --pdbcls=IPython.terminal.debugger:TerminalPdb")
def pytest_namespace():
return {'set_trace': pytestPDB().set_trace}
diff --git a/_pytest/doctest.py b/_pytest/doctest.py
index 144aa2a..f4782dd 100644
--- a/_pytest/doctest.py
+++ b/_pytest/doctest.py
@@ -88,7 +88,7 @@ class DoctestItem(pytest.Item):
if self.dtest is not None:
self.fixture_request = _setup_fixtures(self)
globs = dict(getfixture=self.fixture_request.getfixturevalue)
- for name, value in self.fixture_request.getfuncargvalue('doctest_namespace').items():
+ for name, value in self.fixture_request.getfixturevalue('doctest_namespace').items():
globs[name] = value
self.dtest.globs.update(globs)
diff --git a/_pytest/python.py b/_pytest/python.py
index 75d139d..2ab1de6 100644
--- a/_pytest/python.py
+++ b/_pytest/python.py
@@ -711,31 +711,26 @@ class Metafunc(fixtures.FuncargnamesCompatAttr):
They help to inspect a test function and to generate tests according to
test configuration or values specified in the class or module where a
test function is defined.
-
- :ivar fixturenames: set of fixture names required by the test function
-
- :ivar function: underlying python test function
-
- :ivar cls: class object where the test function is defined in or ``None``.
-
- :ivar module: the module object where the test function is defined in.
-
- :ivar config: access to the :class:`_pytest.config.Config` object for the
- test session.
-
- :ivar funcargnames:
- .. deprecated:: 2.3
- Use ``fixturenames`` instead.
"""
def __init__(self, function, fixtureinfo, config, cls=None, module=None):
+ #: access to the :class:`_pytest.config.Config` object for the test session
self.config = config
+
+ #: the module object where the test function is defined in.
self.module = module
+
+ #: underlying python test function
self.function = function
+
+ #: set of fixture names required by the test function
self.fixturenames = fixtureinfo.names_closure
- self._arg2fixturedefs = fixtureinfo.name2fixturedefs
+
+ #: class object where the test function is defined in or ``None``.
self.cls = cls
+
self._calls = []
self._ids = py.builtin.set()
+ self._arg2fixturedefs = fixtureinfo.name2fixturedefs
def parametrize(self, argnames, argvalues, indirect=False, ids=None,
scope=None):
@@ -778,6 +773,7 @@ class Metafunc(fixtures.FuncargnamesCompatAttr):
"""
from _pytest.fixtures import scopes
from _pytest.mark import extract_argvalue
+ from py.io import saferepr
unwrapped_argvalues = []
newkeywords = []
@@ -831,9 +827,14 @@ class Metafunc(fixtures.FuncargnamesCompatAttr):
if callable(ids):
idfn = ids
ids = None
- if ids and len(ids) != len(argvalues):
- raise ValueError('%d tests specified with %d ids' %(
- len(argvalues), len(ids)))
+ if ids:
+ if len(ids) != len(argvalues):
+ raise ValueError('%d tests specified with %d ids' %(
+ len(argvalues), len(ids)))
+ for id_value in ids:
+ if id_value is not None and not isinstance(id_value, str):
+ msg = 'ids must be list of strings, found: %s (type: %s)'
+ raise ValueError(msg % (saferepr(id_value), type(id_value).__name__))
ids = idmaker(argnames, argvalues, idfn, ids, self.config)
newcalls = []
for callspec in self._calls or [CallSpec2(self)]:
diff --git a/_pytest/unittest.py b/_pytest/unittest.py
index f24b496..47868f4 100644
--- a/_pytest/unittest.py
+++ b/_pytest/unittest.py
@@ -150,7 +150,12 @@ class TestCaseFunction(pytest.Function):
pass
def runtest(self):
- self._testcase(result=self)
+ if self.config.pluginmanager.get_plugin("pdbinvoke") is None:
+ self._testcase(result=self)
+ else:
+ # disables tearDown and cleanups for post mortem debugging (see #1890)
+ self._testcase.debug()
+
def _prunetraceback(self, excinfo):
pytest.Function._prunetraceback(self, excinfo)
diff --git a/doc/en/adopt.rst b/doc/en/adopt.rst
index aead96e..710f431 100644
--- a/doc/en/adopt.rst
+++ b/doc/en/adopt.rst
@@ -1,3 +1,7 @@
+:orphan:
+
+.. warnings about this file not being included in any toctree will be suppressed by :orphan:
+
April 2015 is "adopt pytest month"
=============================================
diff --git a/doc/en/announce/index.rst b/doc/en/announce/index.rst
index 8613582..90e6fcb 100644
--- a/doc/en/announce/index.rst
+++ b/doc/en/announce/index.rst
@@ -5,10 +5,11 @@ Release announcements
.. toctree::
:maxdepth: 2
-
- sprint2016
+
+ release-3.0.2
release-3.0.1
release-3.0.0
+ sprint2016
release-2.9.2
release-2.9.1
release-2.9.0
diff --git a/doc/en/announce/release-2.9.1.rst b/doc/en/announce/release-2.9.1.rst
index 05a4484..3277da1 100644
--- a/doc/en/announce/release-2.9.1.rst
+++ b/doc/en/announce/release-2.9.1.rst
@@ -63,3 +63,5 @@ The py.test Development Team
.. _#649: https://github.com/pytest-dev/pytest/issues/649
.. _ at asottile: https://github.com/asottile
+.. _ at nicoddemus: https://github.com/nicoddemus
+.. _ at tomviner: https://github.com/tomviner
diff --git a/doc/en/announce/release-2.9.2.rst b/doc/en/announce/release-2.9.2.rst
index be7968c..b71ae85 100644
--- a/doc/en/announce/release-2.9.2.rst
+++ b/doc/en/announce/release-2.9.2.rst
@@ -69,5 +69,10 @@ The py.test Development Team
.. _#1496: https://github.com/pytest-dev/pytest/issue/1496
.. _#1524: https://github.com/pytest-dev/pytest/issue/1524
-.. _ at prusse-martin: https://github.com/prusse-martin
.. _ at astraw38: https://github.com/astraw38
+.. _ at hackebrot: https://github.com/hackebrot
+.. _ at omarkohl: https://github.com/omarkohl
+.. _ at pquentin: https://github.com/pquentin
+.. _ at prusse-martin: https://github.com/prusse-martin
+.. _ at RonnyPfannschmidt: https://github.com/RonnyPfannschmidt
+.. _ at tomviner: https://github.com/tomviner
diff --git a/doc/en/announce/release-3.0.2.rst b/doc/en/announce/release-3.0.2.rst
new file mode 100644
index 0000000..631f14f
--- /dev/null
+++ b/doc/en/announce/release-3.0.2.rst
@@ -0,0 +1,26 @@
+pytest-3.0.2
+============
+
+pytest 3.0.2 has just been released to PyPI.
+
+This release fixes some regressions and bugs reported in version 3.0.1, being a
+drop-in replacement. To upgrade::
+
+ pip install --upgrade pytest
+
+The changelog is available at http://doc.pytest.org/en/latest/changelog.html.
+
+Thanks to all who contributed to this release, among them:
+
+* Adam Chainz
+* Andrew Svetlov
+* Bruno Oliveira
+* Daniel Hahler
+* Dmitry Dygalo
+* Florian Bruhin
+* Marcin Bachry
+* Ronny Pfannschmidt
+* matthiasha
+
+Happy testing,
+The pytest Development Team
diff --git a/doc/en/announce/sprint2016.rst b/doc/en/announce/sprint2016.rst
index 16e0f0e..8e70658 100644
--- a/doc/en/announce/sprint2016.rst
+++ b/doc/en/announce/sprint2016.rst
@@ -39,8 +39,6 @@ Over 20 participants took part from 4 continents, including employees
from Splunk, Personalkollen, Cobe.io, FanDuel and Dolby. Some newcomers
mixed with developers who have worked on pytest since its beginning, and
of course everyone in between.
- Ana Ribeiro, Brazil
- Ronny Pfannschmidt, Germany
Sprint organisation, schedule
diff --git a/doc/en/assert.rst b/doc/en/assert.rst
index 40fdebd..9a283b6 100644
--- a/doc/en/assert.rst
+++ b/doc/en/assert.rst
@@ -26,7 +26,7 @@ you will see the return value of the function call::
$ pytest test_assert1.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 1 items
@@ -170,7 +170,7 @@ if you run this module::
$ pytest test_assert2.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 1 items
@@ -208,6 +208,7 @@ It is possible to add your own detailed explanations by implementing
the ``pytest_assertrepr_compare`` hook.
.. autofunction:: _pytest.hookspec.pytest_assertrepr_compare
+ :noindex:
As an example consider adding the following hook in a conftest.py which
provides an alternative explanation for ``Foo`` objects::
diff --git a/doc/en/builtin.rst b/doc/en/builtin.rst
index c0af7f4..26dbd44 100644
--- a/doc/en/builtin.rst
+++ b/doc/en/builtin.rst
@@ -58,13 +58,13 @@ Fixtures and requests
To mark a fixture function:
-.. autofunction:: _pytest.python.fixture
+.. autofunction:: _pytest.fixtures.fixture
Tutorial at :ref:`fixtures`.
The ``request`` object that can be used from fixture functions.
-.. autoclass:: _pytest.python.FixtureRequest()
+.. autoclass:: _pytest.fixtures.FixtureRequest()
:members:
diff --git a/doc/en/cache.rst b/doc/en/cache.rst
index d364f19..5435d43 100644
--- a/doc/en/cache.rst
+++ b/doc/en/cache.rst
@@ -80,7 +80,7 @@ If you then run it with ``--lf``::
$ pytest --lf
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
run-last-failure: rerun last 2 failures
rootdir: $REGENDOC_TMPDIR, inifile:
collected 50 items
@@ -122,7 +122,7 @@ of ``FF`` and dots)::
$ pytest --ff
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
run-last-failure: rerun last 2 failures first
rootdir: $REGENDOC_TMPDIR, inifile:
collected 50 items
@@ -227,14 +227,14 @@ You can always peek at the content of the cache using the
$ py.test --cache-show
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
cachedir: $REGENDOC_TMPDIR/.cache
------------------------------- cache values -------------------------------
- cache/lastfailed contains:
- {'test_caching.py::test_function': True}
example/value contains:
42
+ cache/lastfailed contains:
+ {'test_caching.py::test_function': True}
======= no tests ran in 0.12 seconds ========
diff --git a/doc/en/capture.rst b/doc/en/capture.rst
index e4514b1..f816628 100644
--- a/doc/en/capture.rst
+++ b/doc/en/capture.rst
@@ -64,7 +64,7 @@ of the failing function and hide the other one::
$ pytest
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 2 items
diff --git a/doc/en/conf.py b/doc/en/conf.py
index aca0442..1c15c17 100644
--- a/doc/en/conf.py
+++ b/doc/en/conf.py
@@ -127,7 +127,7 @@ html_theme_options = {
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
-html_title = None
+html_title = 'pytest documentation'
# A shorter title for the navigation bar. Default is the same as html_title.
html_short_title = "pytest-%s" % release
@@ -144,7 +144,7 @@ html_favicon = "img/pytest1favi.ico"
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ['_static']
+# html_static_path = ['_static']
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
diff --git a/doc/en/contents.rst b/doc/en/contents.rst
index c7db9a1..d7f9008 100644
--- a/doc/en/contents.rst
+++ b/doc/en/contents.rst
@@ -10,32 +10,51 @@ Full pytest documentation
.. toctree::
:maxdepth: 2
- overview
- apiref
- example/index
+ getting-started
+ usage
+ assert
+ builtin
+ fixture
monkeypatch
tmpdir
capture
recwarn
+ doctest
+ mark
+ skipping
+ parametrize
cache
- plugins
+ unittest
nose
+ xunit_setup
+ plugins
+ writing_plugins
+
+ example/index
+ goodpractices
+ customize
+ bash-completion
backwards-compatibility
+ license
contributing
talks
+ projects
+ faq
+ contact
.. only:: html
.. toctree::
+ :maxdepth: 1
- funcarg_compare
announce/index
.. only:: html
.. toctree::
:hidden:
+ :maxdepth: 1
changelog
diff --git a/doc/en/doctest.rst b/doc/en/doctest.rst
index fa194dd..198fb18 100644
--- a/doc/en/doctest.rst
+++ b/doc/en/doctest.rst
@@ -16,6 +16,7 @@ from docstrings in all python modules (including regular
python test modules)::
pytest --doctest-modules
+
You can make these changes permanent in your project by
putting them into a pytest.ini file like this:
@@ -48,7 +49,7 @@ then you can just invoke ``pytest`` without command line options::
$ pytest
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile: pytest.ini
collected 1 items
diff --git a/doc/en/example/markers.rst b/doc/en/example/markers.rst
index e622b99..414deb8 100644
--- a/doc/en/example/markers.rst
+++ b/doc/en/example/markers.rst
@@ -31,7 +31,7 @@ You can then restrict a test run to only run tests marked with ``webtest``::
$ pytest -v -m webtest
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -45,7 +45,7 @@ Or the inverse, running all tests except the webtest ones::
$ pytest -v -m "not webtest"
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -66,7 +66,7 @@ tests based on their module, class, method, or function name::
$ pytest -v test_server.py::TestClass::test_method
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 5 items
@@ -79,7 +79,7 @@ You can also select on the class::
$ pytest -v test_server.py::TestClass
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -92,7 +92,7 @@ Or select multiple nodes::
$ pytest -v test_server.py::TestClass test_server.py::test_send_http
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 8 items
@@ -130,7 +130,7 @@ select tests based on their names::
$ pytest -v -k http # running with the above defined example module
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -144,7 +144,7 @@ And you can also run all tests except the ones that match the keyword::
$ pytest -k "not send_http" -v
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -160,7 +160,7 @@ Or to select "http" and "quick" tests::
$ pytest -k "http or quick" -v
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR, inifile:
collecting ... collected 4 items
@@ -352,7 +352,7 @@ the test needs::
$ pytest -E stage2
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 1 items
@@ -364,7 +364,7 @@ and here is one that specifies exactly the environment needed::
$ pytest -E stage1
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 1 items
@@ -485,7 +485,7 @@ then you will see two test skipped and two executed tests as expected::
$ pytest -rs # this option reports skip reasons
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
@@ -499,7 +499,7 @@ Note that if you specify a platform via the marker-command line option like this
$ pytest -m linux2
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
@@ -551,7 +551,7 @@ We can now use the ``-m option`` to select one set::
$ pytest -m interface --tb=short
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
@@ -573,7 +573,7 @@ or to select both "event" and "interface" tests::
$ pytest -m "interface or event" --tb=short
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
diff --git a/doc/en/example/nonpython.rst b/doc/en/example/nonpython.rst
index fd6d3b3..9840e10 100644
--- a/doc/en/example/nonpython.rst
+++ b/doc/en/example/nonpython.rst
@@ -27,7 +27,7 @@ now execute the test specification::
nonpython $ pytest test_simple.yml
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR/nonpython, inifile:
collected 2 items
@@ -59,7 +59,7 @@ consulted when reporting in ``verbose`` mode::
nonpython $ pytest -v
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- $PYTHON_PREFIX/bin/python3.5
cachedir: .cache
rootdir: $REGENDOC_TMPDIR/nonpython, inifile:
collecting ... collected 2 items
@@ -81,7 +81,7 @@ interesting to just look at the collection tree::
nonpython $ pytest --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR/nonpython, inifile:
collected 2 items
<YamlFile 'test_simple.yml'>
diff --git a/doc/en/example/parametrize.rst b/doc/en/example/parametrize.rst
index 70bf92c..4ba7430 100644
--- a/doc/en/example/parametrize.rst
+++ b/doc/en/example/parametrize.rst
@@ -130,7 +130,7 @@ objects, they are still using the default pytest representation::
$ pytest test_time.py --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 6 items
<Module 'test_time.py'>
@@ -181,7 +181,7 @@ this is a fully self-contained example which you can run with::
$ pytest test_scenarios.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
@@ -194,7 +194,7 @@ If you just collect tests you'll also nicely see 'advanced' and 'basic' as varia
$ pytest --collect-only test_scenarios.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 4 items
<Module 'test_scenarios.py'>
@@ -259,7 +259,7 @@ Let's first see how it looks like at collection time::
$ pytest test_backends.py --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 2 items
<Module 'test_backends.py'>
@@ -320,7 +320,7 @@ The result of this test will be successful::
$ pytest test_indirect_list.py --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 1 items
<Module 'test_indirect_list.py'>
@@ -447,7 +447,7 @@ If you run this with reporting for skips enabled::
$ pytest -rs test_module.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile:
collected 2 items
diff --git a/doc/en/example/pythoncollection.rst b/doc/en/example/pythoncollection.rst
index d86e08b..83fcace 100644
--- a/doc/en/example/pythoncollection.rst
+++ b/doc/en/example/pythoncollection.rst
@@ -117,7 +117,7 @@ then the test collection looks like this::
$ pytest --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile: pytest.ini
collected 2 items
<Module 'check_myapp.py'>
@@ -163,7 +163,7 @@ You can always peek at the collection tree without running tests like this::
. $ pytest --collect-only pythoncollection.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile: pytest.ini
collected 3 items
<Module 'CWD/pythoncollection.py'>
@@ -230,7 +230,7 @@ will be left out::
$ pytest --collect-only
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR, inifile: pytest.ini
collected 0 items
diff --git a/doc/en/example/reportingdemo.rst b/doc/en/example/reportingdemo.rst
index 45c4a8e..cddd13d 100644
--- a/doc/en/example/reportingdemo.rst
+++ b/doc/en/example/reportingdemo.rst
@@ -7,13 +7,11 @@ Demo of Python failure reports with pytest
Here is a nice run of several tens of failures
and how ``pytest`` presents things (unfortunately
not showing the nice colors here in the HTML that you
-get on the terminal - we are working on that):
-
-.. code-block:: python
+get on the terminal - we are working on that)::
assertion $ pytest failure_demo.py
======= test session starts ========
- platform linux -- Python 3.5.2, pytest-3.0.1, py-1.4.31, pluggy-0.3.1
+ platform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1
rootdir: $REGENDOC_TMPDIR/assertion, inifile:
collected 42 items
@@ -361,7 +359,7 @@ get on the terminal - we are working on that):
> int(s)
E ValueError: invalid literal for int() with base 10: 'qwe'
- <0-codegen $PYTHON_PREFIX/lib/python3.5/site-packages/_pytest/python.py:1189>:1: ValueError
+ <0-codegen $PYTHON_PREFIX/lib/python3.5/site-packages/_pytest/python.py:1190>:1: ValueError
_______ TestRaises.test_raises_doesnt ________
self = <failure_demo.TestRaises object at 0xdeadbeef>
diff --git a/doc/en/example/simple.rst b/doc/en/example/simple.rst
index 8c6a58b..4d63eef 100644
--- a/doc/en/example/simple.rst
+++ b/doc/en/example/simple.rst
@@ -1,5 +1,4 @@
-.. highlightlang:: python
Basic patterns and examples
==========================================================
@@ -10,7 +9,9 @@ Pass different values to a test function, depending on command line options
.. regendoc:wipe
Suppose we want to write a test that depends on a command line option.
... 1369 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/pytest.git
More information about the Python-modules-commits
mailing list