2018-09-04 13:50:02 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Sep 4 12:55:25 UTC 2018 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.7.4
|
2018-09-05 20:55:40 +00:00
|
|
|
|
- drop 0001-Use-unittest.mock-if-is-only-aviable.patch
|
2018-09-04 13:50:02 +00:00
|
|
|
|
* Fix possible infinite recursion when writing .pyc files
|
|
|
|
|
|
* Cache plugin now obeys the -q flag when --last-failed and
|
|
|
|
|
|
--failed-first flags are used.
|
|
|
|
|
|
* Fix bad console output when using console_output_style=classic
|
|
|
|
|
|
* Fixtures during teardown can again use capsys and capfd to inspect
|
|
|
|
|
|
output captured during tests.
|
|
|
|
|
|
* Fix bugs where unicode arguments could not be passed to testdir.runpytest
|
|
|
|
|
|
on Python 2.
|
|
|
|
|
|
* Fix double collection of tests within packages when the filename starts
|
|
|
|
|
|
with a capital letter
|
|
|
|
|
|
* Fix collection error when specifying test functions directly in the command
|
|
|
|
|
|
line using test.py::test syntax together with --doctest-modules
|
|
|
|
|
|
* Fix stdout/stderr not getting captured when real-time cli logging is active.
|
|
|
|
|
|
* Fix bug where --show-capture=no option would still show logs printed during
|
|
|
|
|
|
fixture teardown.
|
|
|
|
|
|
* Fix issue where teardown of fixtures of consecutive sub-packages were
|
|
|
|
|
|
executed once, at the end of the outer package.
|
|
|
|
|
|
|
2018-08-22 22:13:21 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Aug 22 14:42:56 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.7.2
|
|
|
|
|
|
- add 0001-Use-unittest.mock-if-is-only-aviable.patch
|
|
|
|
|
|
* Fix filterwarnings not being registered as a builtin mark.
|
|
|
|
|
|
* Fix test collection from packages mixed with normal directories.
|
|
|
|
|
|
* Fix infinite recursion during collection if a pytest_ignore_collect
|
|
|
|
|
|
hook returns False instead of None.
|
|
|
|
|
|
* Fix bug where decorated fixtures would lose functionality
|
|
|
|
|
|
* Fix bug where importing modules or other objects with prefix pytest_ prefix
|
|
|
|
|
|
would raise a PluginValidationError.
|
|
|
|
|
|
* Fix AttributeError during teardown of TestCase subclasses which raise
|
|
|
|
|
|
an exception during __init__.
|
|
|
|
|
|
* Fix traceback reporting for exceptions with __cause__ cycles.
|
|
|
|
|
|
|
2018-08-07 14:50:27 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Aug 7 14:49:42 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.7.1
|
|
|
|
|
|
|
2018-08-02 13:12:16 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Aug 2 12:57:23 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.7.0
|
|
|
|
|
|
* pytest_namespace has been deprecated.
|
|
|
|
|
|
* Calling a fixture function directly, as opposed to request them in a test
|
|
|
|
|
|
function, now issues a RemovedInPytest4Warning.
|
|
|
|
|
|
* New package fixture scope: fixtures are finalized when the last test of
|
|
|
|
|
|
a package finishes. This feature is considered experimental, so use it sparingly.
|
|
|
|
|
|
* Node.add_marker now supports an append=True/False parameter to determine
|
|
|
|
|
|
whether the mark comes last (default) or first.
|
|
|
|
|
|
* Fixture caplog now has a messages property, providing convenient access
|
|
|
|
|
|
to the format-interpolated log messages without the extra data provided by the formatter/handler.
|
|
|
|
|
|
* New --trace option to enter the debugger at the start of a test.
|
|
|
|
|
|
* Introduce pytester.copy_example as helper to do acceptance tests
|
|
|
|
|
|
against examples from the project.
|
|
|
|
|
|
|
2018-07-16 00:25:54 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Jul 16 00:17:40 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to pytest-3.6.3
|
|
|
|
|
|
- drop python_mock.patch
|
|
|
|
|
|
* Fix ImportWarning triggered by explicit relative imports in assertion-rewritten
|
|
|
|
|
|
package modules.
|
|
|
|
|
|
* Fix error in pytest.approx when dealing with 0-dimension numpy arrays.
|
|
|
|
|
|
* No longer raise ValueError when using the get_marker API.
|
|
|
|
|
|
* Fix problem where log messages with non-ascii characters would not appear
|
|
|
|
|
|
in the output log file.
|
|
|
|
|
|
* No longer raise AttributeError when legacy marks can't be stored in functions.
|
|
|
|
|
|
|
2018-05-06 12:55:08 +00:00
|
|
|
|
-------------------------------------------------------------------
|
2018-06-25 09:35:39 +00:00
|
|
|
|
Fri Jun 22 15:47:28 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.6.2
|
|
|
|
|
|
- add python-mock to buildrequires
|
|
|
|
|
|
- fix test command
|
|
|
|
|
|
- add python_mock.patch to use stdlib mock library on py3
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu May 31 04:42:41 UTC 2018 - toddrme2178@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- Update to version 3.6.0
|
|
|
|
|
|
+ Features
|
|
|
|
|
|
* Revamp the internals of the ``pytest.mark`` implementation with correct per
|
|
|
|
|
|
node handling which fixes a number of long standing bugs caused by the old
|
|
|
|
|
|
design. This introduces new ``Node.iter_markers(name)`` and
|
|
|
|
|
|
``Node.get_closest_mark(name)`` APIs. Users are **strongly encouraged** to
|
|
|
|
|
|
read the `reasons for the revamp in the docs
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/mark.html#marker-revamp-and-iteration>`_,
|
|
|
|
|
|
or jump over to details about `updating existing code to use the new APIs
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/mark.html#updating-code>`_. (`#3317
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3317>`_)
|
|
|
|
|
|
* Now when ``@pytest.fixture`` is applied more than once to the same function a
|
|
|
|
|
|
``ValueError`` is raised. This buggy behavior would cause surprising problems
|
|
|
|
|
|
and if was working for a test suite it was mostly by accident. (`#2334
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/2334>`_)
|
|
|
|
|
|
* Support for Python 3.7's builtin ``breakpoint()`` method, see `Using the
|
|
|
|
|
|
builtin breakpoint function
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/usage.html#breakpoint-builtin>`_ for
|
|
|
|
|
|
details. (`#3180 <https://github.com/pytest-dev/pytest/issues/3180>`_)
|
|
|
|
|
|
* ``monkeypatch`` now supports a ``context()`` function which acts as a context
|
|
|
|
|
|
manager which undoes all patching done within the ``with`` block. (`#3290
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3290>`_)
|
|
|
|
|
|
* The ``--pdb`` option now causes KeyboardInterrupt to enter the debugger,
|
|
|
|
|
|
instead of stopping the test session. On python 2.7, hitting CTRL+C again
|
|
|
|
|
|
exits the debugger. On python 3.2 and higher, use CTRL+D. (`#3299
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3299>`_)
|
|
|
|
|
|
* pytest not longer changes the log level of the root logger when the
|
|
|
|
|
|
``log-level`` parameter has greater numeric value than that of the level of
|
|
|
|
|
|
the root logger, which makes it play better with custom logging configuration
|
|
|
|
|
|
in user code. (`#3307 <https://github.com/pytest-dev/pytest/issues/3307>`_)
|
|
|
|
|
|
+ Bug Fixes
|
|
|
|
|
|
* A rare race-condition which might result in corrupted ``.pyc`` files on
|
|
|
|
|
|
Windows has been hopefully solved. (`#3008
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3008>`_)
|
|
|
|
|
|
* Also use iter_marker for discovering the marks applying for marker
|
|
|
|
|
|
expressions from the cli to avoid the bad data from the legacy mark storage.
|
|
|
|
|
|
(`#3441 <https://github.com/pytest-dev/pytest/issues/3441>`_)
|
|
|
|
|
|
* When showing diffs of failed assertions where the contents contain only
|
|
|
|
|
|
whitespace, escape them using ``repr()`` first to make it easy to spot the
|
|
|
|
|
|
differences. (`#3443 <https://github.com/pytest-dev/pytest/issues/3443>`_)
|
|
|
|
|
|
+ Improved Documentation
|
|
|
|
|
|
* Change documentation copyright year to a range which auto-updates itself each
|
|
|
|
|
|
time it is published. (`#3303
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3303>`_)
|
|
|
|
|
|
+ Trivial/Internal Changes
|
|
|
|
|
|
* ``pytest`` now depends on the `python-atomicwrites
|
|
|
|
|
|
<https://github.com/untitaker/python-atomicwrites>`_ library. (`#3008
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3008>`_)
|
|
|
|
|
|
* Update all pypi.python.org URLs to pypi.org. (`#3431
|
|
|
|
|
|
<https://github.com/pytest-dev/pytest/issues/3431>`_)
|
|
|
|
|
|
* Detect `pytest_` prefixed hooks using the internal plugin manager since
|
|
|
|
|
|
``pluggy`` is deprecating the ``implprefix`` argument to ``PluginManager``.
|
|
|
|
|
|
(`#3487 <https://github.com/pytest-dev/pytest/issues/3487>`_)
|
|
|
|
|
|
* Import ``Mapping`` and ``Sequence`` from ``_pytest.compat`` instead of
|
|
|
|
|
|
directly from ``collections`` in ``python_api.py::approx``. Add ``Mapping``
|
|
|
|
|
|
to ``_pytest.compat``, import it from ``collections`` on python 2, but from
|
|
|
|
|
|
``collections.abc`` on Python 3 to avoid a ``DeprecationWarning`` on Python
|
|
|
|
|
|
3.7 or newer. (`#3497 <https://github.com/pytest-dev/pytest/issues/3497>`_)
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
2018-05-06 12:55:08 +00:00
|
|
|
|
Sat Apr 28 19:38:40 UTC 2018 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.5.1:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Reset sys.last_type, sys.last_value and sys.last_traceback
|
|
|
|
|
|
before each test executes. Those attributes are added by pytest
|
|
|
|
|
|
during the test run to aid debugging, but were never reset so
|
|
|
|
|
|
they would create a leaking reference to the last failing test’s
|
|
|
|
|
|
frame which in turn could never be reclaimed by the garbage
|
|
|
|
|
|
collector. (#2798)
|
|
|
|
|
|
+ pytest.raises now raises TypeError when receiving an unknown
|
|
|
|
|
|
keyword argument. (#3348)
|
|
|
|
|
|
+ pytest.raises now works with exception classes that look like
|
|
|
|
|
|
iterables. (#3372)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ Fix typo in caplog fixture documentation, which incorrectly
|
|
|
|
|
|
identified certain attributes as methods. (#3406)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ Added a more indicative error message when parametrizing a
|
|
|
|
|
|
function whose argument takes a default value. (#3221)
|
|
|
|
|
|
+ Remove internal _pytest.terminal.flatten function in favor of
|
|
|
|
|
|
more_itertools.collapse. (#3330)
|
|
|
|
|
|
+ Import some modules from collections.abc instead of collections
|
|
|
|
|
|
as the former modules trigger DeprecationWarning in Python
|
|
|
|
|
|
3.7. (#3339)
|
|
|
|
|
|
+ record_property is no longer experimental, removing the warnings
|
|
|
|
|
|
was forgotten. (#3360)
|
|
|
|
|
|
+ Mention in documentation and CLI help that fixtures with leading
|
|
|
|
|
|
_ are printed by pytest --fixtures only if the -v option is
|
|
|
|
|
|
added. (#3398)
|
|
|
|
|
|
|
2018-04-02 20:48:47 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Apr 2 14:07:27 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- add python3-sphinxcontrib-trio to BuildRequires
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Mar 29 13:22:39 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.5.0
|
|
|
|
|
|
- new install dependency python-more-itertools
|
|
|
|
|
|
- more changes in CHANGELOG.rst
|
|
|
|
|
|
|
2018-03-12 11:01:55 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Mar 9 08:38:59 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.4.2
|
|
|
|
|
|
- more in python-pytest.changes
|
|
|
|
|
|
|
2018-02-24 15:37:21 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Feb 22 20:37:25 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.4.1
|
|
|
|
|
|
* Move import of doctest.UnexpectedException to top-level to avoid possible
|
|
|
|
|
|
errors when using --pdb.
|
|
|
|
|
|
* Added printing of captured stdout/stderr before entering pdb, and improved a
|
|
|
|
|
|
test which was giving false negatives about output capturing.
|
|
|
|
|
|
* Fix ordering of tests using parametrized fixtures which can lead to fixtures
|
|
|
|
|
|
being created more than necessary.
|
|
|
|
|
|
* Fix bug where logging happening at hooks outside of "test run" hooks would
|
|
|
|
|
|
cause an internal error.
|
|
|
|
|
|
* Detect arguments injected by unittest.mock.patch decorator correctly when
|
|
|
|
|
|
pypi mock.patch is installed and imported.
|
|
|
|
|
|
* Errors shown when a pytest.raises() with match= fails are now cleaner
|
|
|
|
|
|
on what happened: When no exception was raised, the "matching '...'" part got
|
|
|
|
|
|
removed as it falsely implies that an exception was raised but it didn't
|
|
|
|
|
|
match. When a wrong exception was raised, it's now thrown
|
|
|
|
|
|
instead of complaining about the unmatched text.
|
|
|
|
|
|
* Add Sphinx parameter docs for match and message args to pytest.raises
|
|
|
|
|
|
* Rename ParameterSet._for_parameterize() to _for_parametrize() in
|
|
|
|
|
|
order to comply with the naming convention.
|
|
|
|
|
|
|
2018-02-15 12:20:39 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Feb 10 17:59:11 UTC 2018 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.4.0:
|
|
|
|
|
|
* Deprecations and Removals
|
|
|
|
|
|
+ All pytest classes now subclass object for better Python 2/3
|
|
|
|
|
|
compatibility. This should not affect user code except in very
|
|
|
|
|
|
rare edge cases. (#2147)
|
|
|
|
|
|
* Features
|
|
|
|
|
|
+ Introduce empty_parameter_set_mark ini option to select which
|
|
|
|
|
|
mark to apply when @pytest.mark.parametrize is given an empty
|
|
|
|
|
|
set of parameters. Valid options are skip (default) and
|
|
|
|
|
|
xfail. Note that it is planned to change the default to xfail in
|
|
|
|
|
|
future releases as this is considered less error prone. (#2527)
|
|
|
|
|
|
+ Incompatible change: after community feedback the logging
|
|
|
|
|
|
functionality has undergone some changes. Please consult the
|
|
|
|
|
|
logging documentation for details. (#3013)
|
|
|
|
|
|
+ Console output falls back to “classic” mode when capturing is
|
|
|
|
|
|
disabled (-s), otherwise the output gets garbled to the point of
|
|
|
|
|
|
being useless. (#3038)
|
|
|
|
|
|
+ New pytest_runtest_logfinish hook which is called when a test
|
|
|
|
|
|
item has finished executing, analogous to
|
|
|
|
|
|
pytest_runtest_logstart. (#3101)
|
|
|
|
|
|
+ Improve performance when collecting tests using many
|
|
|
|
|
|
fixtures. (#3107)
|
|
|
|
|
|
+ New caplog.get_records(when) method which provides access to the
|
|
|
|
|
|
captured records for the "setup", "call" and "teardown" testing
|
|
|
|
|
|
stages. (#3117)
|
|
|
|
|
|
+ New fixture record_xml_attribute that allows modifying and
|
|
|
|
|
|
inserting attributes on the <testcase> xml node in JUnit
|
|
|
|
|
|
reports. (#3130)
|
|
|
|
|
|
+ The default cache directory has been renamed from .cache to
|
|
|
|
|
|
.pytest_cache after community feedback that the name .cache did
|
|
|
|
|
|
not make it clear that it was used by pytest. (#3138)
|
|
|
|
|
|
+ Colorize the levelname column in the live-log output. (#3142)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Fix hanging pexpect test on MacOS by using flush() instead of
|
|
|
|
|
|
wait(). (#2022)
|
|
|
|
|
|
+ Fix restoring Python state after in-process pytest runs with the
|
|
|
|
|
|
pytester plugin; this may break tests using multiple inprocess
|
|
|
|
|
|
pytest runs if later ones depend on earlier ones leaking global
|
|
|
|
|
|
interpreter changes. (#3016)
|
|
|
|
|
|
+ Fix skipping plugin reporting hook when test aborted before
|
|
|
|
|
|
plugin setup hook. (#3074)
|
|
|
|
|
|
+ Fix progress percentage reported when tests fail during
|
|
|
|
|
|
teardown. (#3088)
|
|
|
|
|
|
+ Incompatible change: -o/--override option no longer eats all the
|
|
|
|
|
|
remaining options, which can lead to surprising behavior: for
|
|
|
|
|
|
example, pytest -o foo=1 /path/to/test.py would fail because
|
|
|
|
|
|
/path/to/test.py would be considered as part of the -o
|
|
|
|
|
|
command-line argument. One consequence of this is that now
|
|
|
|
|
|
multiple configuration overrides need multiple -o flags: pytest
|
|
|
|
|
|
-o foo=1 -o bar=2. (#3103)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ Document hooks (defined with historic=True) which cannot be used
|
|
|
|
|
|
with hookwrapper=True. (#2423)
|
|
|
|
|
|
+ Clarify that warning capturing doesn’t change the warning filter
|
|
|
|
|
|
by default. (#2457)
|
|
|
|
|
|
+ Clarify a possible confusion when using pytest_fixture_setup
|
|
|
|
|
|
with fixture functions that return None. (#2698)
|
|
|
|
|
|
+ Fix the wording of a sentence on doctest flags used in
|
|
|
|
|
|
pytest. (#3076)
|
|
|
|
|
|
+ Prefer https://*.readthedocs.io over http://*.rtfd.org for links
|
|
|
|
|
|
in the documentation. (#3092)
|
|
|
|
|
|
+ Improve readability (wording, grammar) of Getting Started guide
|
|
|
|
|
|
(#3131)
|
|
|
|
|
|
+ Added note that calling pytest.main multiple times from the same
|
|
|
|
|
|
process is not recommended because of import caching. (#3143)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ Show a simple and easy error when keyword expressions trigger a
|
|
|
|
|
|
syntax error (for example, "-k foo and import" will show an
|
|
|
|
|
|
error that you can not use the import keyword in
|
|
|
|
|
|
expressions). (#2953)
|
|
|
|
|
|
+ Change parametrized automatic test id generation to use the
|
|
|
|
|
|
__name__ attribute of functions instead of the fallback argument
|
|
|
|
|
|
name plus counter. (#2976)
|
|
|
|
|
|
+ Replace py.std with stdlib imports. (#3067)
|
|
|
|
|
|
+ Corrected ‘you’ to ‘your’ in logging docs. (#3129)
|
|
|
|
|
|
|
2018-01-16 08:25:01 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sat Jan 6 05:25:16 UTC 2018 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- specfile:
|
|
|
|
|
|
* update copyright year
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.3.2:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ pytester: ignore files used to obtain current user metadata in
|
|
|
|
|
|
the fd leak detector. (#2784)
|
|
|
|
|
|
+ Fix memory leak where objects returned by fixtures were never
|
|
|
|
|
|
destructed by the garbage collector. (#2981)
|
|
|
|
|
|
+ Fix conversion of pyargs to filename to not convert symlinks and
|
|
|
|
|
|
not use deprecated features on Python 3. (#2985)
|
|
|
|
|
|
+ PYTEST_DONT_REWRITE is now checked for plugins too rather than
|
|
|
|
|
|
only for test modules. (#2995)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ Add clarifying note about behavior of multiple parametrized
|
|
|
|
|
|
arguments (#3001)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ Code cleanup. (#3015, #3021)
|
|
|
|
|
|
+ Clean up code by replacing imports and references of _ast to
|
|
|
|
|
|
ast. (#3018)
|
|
|
|
|
|
|
2017-12-15 13:01:40 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Dec 13 09:25:43 UTC 2017 - jengelh@inai.de
|
|
|
|
|
|
|
|
|
|
|
|
- Adjust summaries and description of python-pytest to focus on
|
|
|
|
|
|
the documentation part.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Dec 13 09:12:40 UTC 2017 - ecsos@opensuse.org
|
|
|
|
|
|
|
|
|
|
|
|
- Rename BuildRequires python2-funcsigs to python-funcsigs
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Dec 12 16:45:15 UTC 2017 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- Cleanup BuildRequires
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Dec 6 02:55:08 UTC 2017 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.3.1:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Fix issue about -p no:<plugin> having no effect. (#2920)
|
|
|
|
|
|
+ Fix regression with warnings that contained non-strings in their
|
|
|
|
|
|
arguments in Python 2. (#2956)
|
|
|
|
|
|
+ Always escape null bytes when setting
|
|
|
|
|
|
PYTEST_CURRENT_TEST. (#2957)
|
|
|
|
|
|
+ Fix ZeroDivisionError when using the testmon plugin when no
|
|
|
|
|
|
tests were actually collected. (#2971)
|
|
|
|
|
|
+ Bring back TerminalReporter.writer as an alias to
|
|
|
|
|
|
TerminalReporter._tw. This alias was removed by accident in the
|
|
|
|
|
|
3.3.0 release. (#2984)
|
|
|
|
|
|
+ The pytest-capturelog plugin is now also blacklisted, avoiding
|
|
|
|
|
|
errors when running pytest with it still installed. (#3004)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ Fix broken link to plugin pytest-localserver. (#2963)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ Update github “bugs” link in CONTRIBUTING.rst (#2949)
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Tue Nov 28 18:58:11 UTC 2017 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- specfile:
|
|
|
|
|
|
* add requirement for attr and pluggy
|
|
|
|
|
|
* add requirement for funcsigs for python2 only
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.3.0:
|
|
|
|
|
|
* Deprecations and Removals
|
|
|
|
|
|
+ Pytest no longer supports Python 2.6 and 3.3. Those Python
|
|
|
|
|
|
versions are EOL for some time now and incur maintenance and
|
|
|
|
|
|
compatibility costs on the pytest core team, and following up
|
|
|
|
|
|
with the rest of the community we decided that they will no
|
|
|
|
|
|
longer be supported starting on this version. Users which still
|
|
|
|
|
|
require those versions should pin pytest to <3.3. (#2812)
|
|
|
|
|
|
+ Remove internal _preloadplugins() function. This removal is part
|
|
|
|
|
|
of the pytest_namespace() hook deprecation. (#2636)
|
|
|
|
|
|
+ Internally change CallSpec2 to have a list of marks instead of a
|
|
|
|
|
|
broken mapping of keywords. This removes the keywords attribute
|
|
|
|
|
|
of the internal CallSpec2 class. (#2672)
|
|
|
|
|
|
+ Remove ParameterSet.deprecated_arg_dict - its not a public api
|
|
|
|
|
|
and the lack of the underscore was a naming error. (#2675)
|
|
|
|
|
|
+ Remove the internal multi-typed attribute Node._evalskip and
|
|
|
|
|
|
replace it with the boolean Node._skipped_by_mark. (#2767)
|
|
|
|
|
|
* Features
|
|
|
|
|
|
+ pytest_fixture_post_finalizer hook can now receive a request
|
|
|
|
|
|
argument. (#2124)
|
|
|
|
|
|
+ Replace the old introspection code in compat.py that determines
|
|
|
|
|
|
the available arguments of fixtures with inspect.signature on
|
|
|
|
|
|
Python 3 and funcsigs.signature on Python 2. This should respect
|
|
|
|
|
|
__signature__ declarations on functions. (#2267)
|
|
|
|
|
|
+ Report tests with global pytestmark variable only once. (#2549)
|
|
|
|
|
|
+ Now pytest displays the total progress percentage while running
|
|
|
|
|
|
tests. The previous output style can be set by configuring the
|
|
|
|
|
|
console_output_style setting to classic. (#2657)
|
|
|
|
|
|
+ Match warns signature to raises by adding match keyword. (#2708)
|
|
|
|
|
|
+ Pytest now captures and displays output from the standard
|
|
|
|
|
|
logging module. The user can control the logging level to be
|
|
|
|
|
|
captured by specifying options in pytest.ini, the command line
|
|
|
|
|
|
and also during individual tests using markers. Also, a caplog
|
|
|
|
|
|
fixture is available that enables users to test the captured log
|
|
|
|
|
|
during specific tests (similar to capsys for example). For more
|
|
|
|
|
|
information, please see the logging docs. This feature was
|
|
|
|
|
|
introduced by merging the popular pytest-catchlog plugin, thanks
|
|
|
|
|
|
to Thomas Hisch. Be advised that during the merging the backward
|
|
|
|
|
|
compatibility interface with the defunct pytest-capturelog has
|
|
|
|
|
|
been dropped. (#2794)
|
|
|
|
|
|
+ Add allow_module_level kwarg to pytest.skip(), enabling to skip
|
|
|
|
|
|
the whole module. (#2808)
|
|
|
|
|
|
+ Allow setting file_or_dir, -c, and -o in PYTEST_ADDOPTS. (#2824)
|
|
|
|
|
|
+ Return stdout/stderr capture results as a namedtuple, so out and
|
|
|
|
|
|
err can be accessed by attribute. (#2879)
|
|
|
|
|
|
+ Add capfdbinary, a version of capfd which returns bytes from
|
|
|
|
|
|
readouterr(). (#2923)
|
|
|
|
|
|
+ Add capsysbinary a version of capsys which returns bytes from
|
|
|
|
|
|
readouterr(). (#2934)
|
|
|
|
|
|
+ Implement feature to skip setup.py files when run with
|
|
|
|
|
|
--doctest-modules. (#502)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Resume output capturing after capsys/capfd.disabled() context
|
|
|
|
|
|
manager. (#1993)
|
|
|
|
|
|
+ pytest_fixture_setup and pytest_fixture_post_finalizer hooks are
|
|
|
|
|
|
now called for all conftest.py files. (#2124)
|
|
|
|
|
|
+ If an exception happens while loading a plugin, pytest no longer
|
|
|
|
|
|
hides the original traceback. In python2 it will show the
|
|
|
|
|
|
original traceback with a new message that explains in which
|
|
|
|
|
|
plugin. In python3 it will show 2 canonized exceptions, the
|
|
|
|
|
|
original exception while loading the plugin in addition to an
|
|
|
|
|
|
exception that PyTest throws about loading a plugin. (#2491)
|
|
|
|
|
|
+ capsys and capfd can now be used by other fixtures. (#2709)
|
|
|
|
|
|
+ Internal pytester plugin properly encodes bytes arguments to
|
|
|
|
|
|
utf-8. (#2738)
|
|
|
|
|
|
+ testdir now uses use the same method used by tmpdir to create
|
|
|
|
|
|
its temporary directory. This changes the final structure of the
|
|
|
|
|
|
testdir directory slightly, but should not affect usage in
|
|
|
|
|
|
normal scenarios and avoids a number of potential
|
|
|
|
|
|
problems. (#2751)
|
|
|
|
|
|
+ Pytest no longer complains about warnings with unicode messages
|
|
|
|
|
|
being non-ascii compatible even for ascii-compatible
|
|
|
|
|
|
messages. As a result of this, warnings with unicode messages
|
|
|
|
|
|
are converted first to an ascii representation for
|
|
|
|
|
|
safety. (#2809)
|
|
|
|
|
|
+ Change return value of pytest command when --maxfail is reached
|
|
|
|
|
|
from 2 (interrupted) to 1 (failed). (#2845)
|
|
|
|
|
|
+ Fix issue in assertion rewriting which could lead it to rewrite
|
|
|
|
|
|
modules which should not be rewritten. (#2939)
|
|
|
|
|
|
+ Handle marks without description in pytest.ini. (#2942)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ pytest now depends on attrs for internal structures to ease code
|
|
|
|
|
|
maintainability. (#2641)
|
|
|
|
|
|
+ Refactored internal Python 2/3 compatibility code to use
|
|
|
|
|
|
six. (#2642)
|
|
|
|
|
|
+ Stop vendoring pluggy - we’re missing out on its latest changes
|
|
|
|
|
|
for not much benefit (#2719)
|
|
|
|
|
|
+ Internal refactor: simplify ascii string escaping by using the
|
|
|
|
|
|
backslashreplace error handler in newer Python 3
|
|
|
|
|
|
versions. (#2734)
|
|
|
|
|
|
+ Remove unnecessary mark evaluator in unittest plugin (#2767)
|
|
|
|
|
|
+ Calls to Metafunc.addcall now emit a deprecation warning. This
|
|
|
|
|
|
function is scheduled to be removed in pytest-4.0. (#2876)
|
|
|
|
|
|
+ Internal move of the parameterset extraction to a more
|
|
|
|
|
|
maintainable place. (#2877)
|
|
|
|
|
|
+ Internal refactoring to simplify scope node lookup. (#2910)
|
|
|
|
|
|
+ Configure pytest to prevent pip from installing pytest in
|
|
|
|
|
|
unsupported Python versions. (#2922)
|
|
|
|
|
|
|
2017-11-19 10:05:58 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Nov 15 12:18:45 UTC 2017 - mimi.vx@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.2.5
|
|
|
|
|
|
* don't limit py<1.5
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Wed Nov 15 07:04:29 UTC 2017 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.2.4:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Fix the bug where running with --pyargs will result in items
|
|
|
|
|
|
with empty parent.nodeid if run from a different root
|
|
|
|
|
|
directory. (#2775)
|
|
|
|
|
|
+ Fix issue with @pytest.parametrize if argnames was specified as
|
|
|
|
|
|
keyword arguments. (#2819)
|
|
|
|
|
|
+ Strip whitespace from marker names when reading them from INI
|
|
|
|
|
|
config. (#2856)
|
|
|
|
|
|
+ Show full context of doctest source in the pytest output, if the
|
|
|
|
|
|
line number of failed example in the docstring is < 9. (#2882)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ Introduce a dedicated section about conftest.py. (#1505)
|
|
|
|
|
|
+ Explicitly mention xpass in the documentation of xfail. (#1997)
|
|
|
|
|
|
+ Append example for pytest.param in the example/parametrize
|
|
|
|
|
|
document. (#2658)
|
|
|
|
|
|
+ Clarify language of proposal for fixtures parameters (#2893)
|
|
|
|
|
|
+ List python 3.6 in the documented supported versions in the
|
|
|
|
|
|
getting started document. (#2903)
|
|
|
|
|
|
+ Clarify the documentation of available fixture scopes. (#538)
|
|
|
|
|
|
+ Add documentation about the python -m pytest invocation adding
|
|
|
|
|
|
the current directory to sys.path. (#911)
|
|
|
|
|
|
|
2017-11-02 09:24:10 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Oct 5 16:16:23 UTC 2017 - arun@gmx.de
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 3.2.3:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ Fix crash in tab completion when no prefix is given. (#2748)
|
|
|
|
|
|
+ The equality checking function (__eq__) of MarkDecorator returns
|
|
|
|
|
|
False if one object is not an instance of MarkDecorator. (#2758)
|
|
|
|
|
|
+ When running pytest --fixtures-per-test: don’t crash if an item
|
|
|
|
|
|
has no _fixtureinfo attribute (e.g. doctests) (#2788)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
+ In help text of -k option, add example of using not to not
|
|
|
|
|
|
select certain tests whose names match the provided
|
|
|
|
|
|
expression. (#1442)
|
|
|
|
|
|
+ Add note in parametrize.rst about calling metafunc.parametrize
|
|
|
|
|
|
multiple times. (#1548)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
+ Set xfail_strict=True in pytest’s own test suite to catch
|
|
|
|
|
|
expected failures as soon as they start to pass. (#2722)
|
|
|
|
|
|
+ Fix typo in example of passing a callable to markers (in
|
|
|
|
|
|
example/markers.rst) (#2765)
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Sep 28 21:25:37 UTC 2017 - sean.marlow@suse.com
|
|
|
|
|
|
|
|
|
|
|
|
- Fix python-py version requirement.
|
|
|
|
|
|
- Update to 3.2.2:
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- Calling the deprecated request.getfuncargvalue() now shows the
|
|
|
|
|
|
source of the call. (#2681)
|
|
|
|
|
|
- Allow tests declared as @staticmethod to use fixtures. (#2699)
|
|
|
|
|
|
- Fixed edge-case during collection: attributes which raised
|
|
|
|
|
|
pytest.fail when accessed would abort the entire collection.
|
|
|
|
|
|
(#2707)
|
|
|
|
|
|
- Fix ReprFuncArgs with mixed unicode and UTF-8 args. (#2731)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- In examples on working with custom markers, add examples
|
|
|
|
|
|
demonstrating the usage of pytest.mark.MARKER_NAME.with_args
|
|
|
|
|
|
in comparison with pytest.mark.MARKER_NAME.__call__ (#2604)
|
|
|
|
|
|
- In one of the simple examples, use
|
|
|
|
|
|
pytest_collection_modifyitems() to skip tests based on a
|
|
|
|
|
|
command-line option, allowing its sharing while preventing a
|
|
|
|
|
|
user error when acessing pytest.config before the argument
|
|
|
|
|
|
parsing. (#2653)
|
|
|
|
|
|
* Trivial/Internal Changes
|
|
|
|
|
|
- Fixed minor error in 'Good Practices/Manual Integration' code
|
|
|
|
|
|
snippet. (#2691)
|
|
|
|
|
|
- Fixed typo in goodpractices.rst. (#2721)
|
|
|
|
|
|
- Improve user guidance regarding --resultlog deprecation.
|
|
|
|
|
|
(#2739)
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Aug 25 10:01:52 UTC 2017 - sebix+novell.com@sebix.at
|
|
|
|
|
|
|
|
|
|
|
|
- update to 3.2.1, shortened changelogs:
|
|
|
|
|
|
* Pytest 3.2.1 (2017-08-08)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- Fixed small terminal glitch when collecting a single test item. (#2579)
|
|
|
|
|
|
- Correctly consider / as the file separator to automatically mark plugin
|
|
|
|
|
|
files for rewrite on Windows. (#2591)
|
|
|
|
|
|
- Properly escape test names when setting PYTEST_CURRENT_TEST environment
|
|
|
|
|
|
variable. (#2644)
|
|
|
|
|
|
- Fix error on Windows and Python 3.6+ when sys.stdout has been replaced
|
|
|
|
|
|
with a stream-like object which does not implement the full io module
|
|
|
|
|
|
buffer protocol. In particular this affects pytest-xdist users on the
|
|
|
|
|
|
aforementioned platform. (#2666)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- Explicitly document which pytest features work with unittest. (#2626)
|
|
|
|
|
|
* Pytest 3.2.0 (2017-07-30)
|
|
|
|
|
|
* Deprecations and Removals
|
|
|
|
|
|
- pytest.approx no longer supports >, >=, < and <=
|
|
|
|
|
|
operators to avoid surprising/inconsistent behavior. See the docs
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/builtin.html#pytest.approx> for more
|
|
|
|
|
|
information. (#2003)
|
|
|
|
|
|
- All old-style specific behavior in current classes in the pytest's API is
|
|
|
|
|
|
considered deprecated at this point and will be removed in a future release.
|
|
|
|
|
|
This affects Python 2 users only and in rare situations. (#2147)
|
|
|
|
|
|
- A deprecation warning is now raised when using marks for parameters
|
|
|
|
|
|
in pytest.mark.parametrize. Use pytest.param to apply marks to
|
|
|
|
|
|
parameters instead. (#2427)
|
|
|
|
|
|
* Features
|
|
|
|
|
|
- Add support for numpy arrays (and dicts) to approx. (#1994)
|
|
|
|
|
|
- Now test function objects have a pytestmark attribute containing a list
|
|
|
|
|
|
of marks applied directly to the test function, as opposed to marks inherited
|
|
|
|
|
|
from parent classes or modules. (#2516)
|
|
|
|
|
|
- Collection ignores local virtualenvs by default; `--collect-in-virtualenv`
|
|
|
|
|
|
overrides this behavior. (#2518)
|
|
|
|
|
|
- Allow class methods decorated as @staticmethod to be candidates for
|
|
|
|
|
|
collection as a test function. (Only for Python 2.7 and above. Python 2.6
|
|
|
|
|
|
will still ignore static methods.) (#2528)
|
|
|
|
|
|
- Introduce mark.with_args in order to allow passing functions/classes as
|
|
|
|
|
|
sole argument to marks. (#2540)
|
|
|
|
|
|
- New cache_dir ini option: sets the directory where the contents of the
|
|
|
|
|
|
cache plugin are stored. Directory may be relative or absolute path: if relative path, then
|
|
|
|
|
|
directory is created relative to rootdir, otherwise it is used as is.
|
|
|
|
|
|
Additionally path may contain environment variables which are expanded during
|
|
|
|
|
|
runtime. (#2543)
|
|
|
|
|
|
- Introduce the PYTEST_CURRENT_TEST environment variable that is set with
|
|
|
|
|
|
the nodeid and stage (setup, call and teardown) of the test
|
|
|
|
|
|
being currently executed. See the documentation
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/example/simple.html#pytest-current-test-
|
|
|
|
|
|
environment-variable> for more info. (#2583)
|
|
|
|
|
|
- Introduced @pytest.mark.filterwarnings mark which allows overwriting the
|
|
|
|
|
|
warnings filter on a per test, class or module level. See the docs
|
|
|
|
|
|
<https://docs.pytest.org/en/latest/warnings.html#pytest-mark-
|
|
|
|
|
|
filterwarnings> for more information. (#2598)
|
|
|
|
|
|
- --last-failed now remembers forever when a test has failed and only
|
|
|
|
|
|
forgets it if it passes again. This makes it easy to fix a test suite by
|
|
|
|
|
|
selectively running files and fixing tests incrementally. (#2621)
|
|
|
|
|
|
- New pytest_report_collectionfinish hook which allows plugins to add
|
|
|
|
|
|
messages to the terminal reporting after collection has been finished
|
|
|
|
|
|
successfully. (#2622)
|
|
|
|
|
|
- Added support for PEP-415's <https://www.python.org/dev/peps/pep-0415/>
|
|
|
|
|
|
Exception.__suppress_context__. Now if a raise exception from None is
|
|
|
|
|
|
caught by pytest, pytest will no longer chain the context in the test report.
|
|
|
|
|
|
The behavior now matches Python's traceback behavior. (#2631)
|
|
|
|
|
|
- Exceptions raised by pytest.fail, pytest.skip and pytest.xfail
|
|
|
|
|
|
now subclass BaseException, making them harder to be caught unintentionally
|
|
|
|
|
|
by normal code. (#580)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- Set stdin to a closed PIPE in pytester.py.Testdir.popen() for
|
|
|
|
|
|
avoid unwanted interactive pdb (#2023)
|
|
|
|
|
|
- Add missing encoding attribute to sys.std* streams when using
|
|
|
|
|
|
capsys capture mode. (#2375)
|
|
|
|
|
|
- Fix terminal color changing to black on Windows if colorama is imported
|
|
|
|
|
|
in a conftest.py file. (#2510)
|
|
|
|
|
|
- Fix line number when reporting summary of skipped tests. (#2548)
|
|
|
|
|
|
- capture: ensure that EncodedFile.name is a string. (#2555)
|
|
|
|
|
|
- The options --fixtures and --fixtures-per-test will now keep
|
|
|
|
|
|
indentation within docstrings. (#2574)
|
|
|
|
|
|
- doctests line numbers are now reported correctly, fixing pytest-sugar#122
|
|
|
|
|
|
<https://github.com/Frozenball/pytest-sugar/issues/122>. (#2610)
|
|
|
|
|
|
- Fix non-determinism in order of fixture collection. Adds new dependency
|
|
|
|
|
|
(ordereddict) for Python 2.6. (#920)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- Clarify pytest_configure hook call order. (#2539)
|
|
|
|
|
|
- Extend documentation for testing plugin code with the pytester plugin.
|
|
|
|
|
|
(#971)
|
|
|
|
|
|
* Pytest 3.1.3 (2017-07-03)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- Fix decode error in Python 2 for doctests in docstrings. (#2434)
|
|
|
|
|
|
- Exceptions raised during teardown by finalizers are now suppressed until all
|
|
|
|
|
|
finalizers are called, with the initial exception reraised. (#2440)
|
|
|
|
|
|
- Fix incorrect "collected items" report when specifying tests on the command-
|
|
|
|
|
|
line. (#2464)
|
|
|
|
|
|
- deprecated_call in context-manager form now captures deprecation warnings
|
|
|
|
|
|
even if the same warning has already been raised. Also, deprecated_call
|
|
|
|
|
|
will always produce the same error message (previously it would produce
|
|
|
|
|
|
different messages in context-manager vs. function-call mode). (#2469)
|
|
|
|
|
|
- Fix issue where paths collected by pytest could have triple leading /
|
|
|
|
|
|
characters. (#2475)
|
|
|
|
|
|
- Fix internal error when trying to detect the start of a recursive traceback.
|
|
|
|
|
|
(#2486)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- Explicitly state for which hooks the calls stop after the first non-None
|
|
|
|
|
|
result. (#2493)
|
|
|
|
|
|
* Pytest 3.1.2 (2017-06-08)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- Required options added via pytest_addoption will no longer prevent using
|
|
|
|
|
|
--help without passing them. (#1999)
|
|
|
|
|
|
- Respect python_files in assertion rewriting. (#2121)
|
|
|
|
|
|
- Fix recursion error detection when frames in the traceback contain objects
|
|
|
|
|
|
that can't be compared (like numpy arrays). (#2459)
|
|
|
|
|
|
- UnicodeWarning is issued from the internal pytest warnings plugin only
|
|
|
|
|
|
when the message contains non-ascii unicode (Python 2 only). (#2463)
|
|
|
|
|
|
- Added a workaround for Python 3.6 WindowsConsoleIO breaking due to Pytests's
|
|
|
|
|
|
FDCapture. Other code using console handles might still be affected by the
|
|
|
|
|
|
very same issue and might require further workarounds/fixes, i.e. colorama.
|
|
|
|
|
|
(#2467)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- Fix internal API links to pluggy objects. (#2331)
|
|
|
|
|
|
- Make it clear that pytest.xfail stops test execution at the calling point
|
|
|
|
|
|
and improve overall flow of the skipping docs. (#810)
|
|
|
|
|
|
* Pytest 3.1.1 (2017-05-30)
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
- pytest warning capture no longer overrides existing warning filters. The
|
|
|
|
|
|
previous behaviour would override all filters and caused regressions in test
|
|
|
|
|
|
suites which configure warning filters to match their needs. Note that as a
|
|
|
|
|
|
side-effect of this is that DeprecationWarning and
|
|
|
|
|
|
PendingDeprecationWarning are no longer shown by default. (#2430)
|
|
|
|
|
|
- Fix issue with non-ascii contents in doctest text files. (#2434)
|
|
|
|
|
|
- Fix encoding errors for unicode warnings in Python 2. (#2436)
|
|
|
|
|
|
- pytest.deprecated_call now captures PendingDeprecationWarning in
|
|
|
|
|
|
context manager form. (#2441)
|
|
|
|
|
|
* Improved Documentation
|
|
|
|
|
|
- Addition of towncrier for changelog management. (#2390)
|
|
|
|
|
|
* 3.1.0 (2017-05-22)
|
|
|
|
|
|
* New Features
|
|
|
|
|
|
* The pytest-warnings plugin has been integrated into the core and now pytest automatically
|
|
|
|
|
|
captures and displays warnings at the end of the test session.
|
|
|
|
|
|
.. warning::
|
|
|
|
|
|
This feature may disrupt test suites which apply and treat warnings themselves, and can be
|
|
|
|
|
|
disabled in your pytest.ini:
|
|
|
|
|
|
.. code-block:: ini
|
|
|
|
|
|
[pytest]
|
|
|
|
|
|
addopts = -p no:warnings
|
|
|
|
|
|
See the warnings documentation page <https://docs.pytest.org/en/latest/warnings.html> for more
|
|
|
|
|
|
information.
|
|
|
|
|
|
Thanks @nicoddemus for the PR.
|
|
|
|
|
|
* Added junit_suite_name ini option to specify root <testsuite> name for JUnit XML reports (#533).
|
|
|
|
|
|
* Added an ini option doctest_encoding to specify which encoding to use for doctest files.
|
|
|
|
|
|
Thanks @wheerd for the PR (#2101).
|
|
|
|
|
|
* pytest.warns now checks for subclass relationship rather than
|
|
|
|
|
|
class equality. Thanks @lesteve for the PR (#2166)
|
|
|
|
|
|
* pytest.raises now asserts that the error message matches a text or regex
|
|
|
|
|
|
with the match keyword argument. Thanks @Kriechi for the PR.
|
|
|
|
|
|
* pytest.param can be used to declare test parameter sets with marks and test ids.
|
|
|
|
|
|
Thanks @RonnyPfannschmidt for the PR.
|
|
|
|
|
|
* Changes
|
|
|
|
|
|
* remove all internal uses of pytest_namespace hooks,
|
|
|
|
|
|
this is to prepare the removal of preloadconfig in pytest 4.0
|
|
|
|
|
|
Thanks to @RonnyPfannschmidt for the PR.
|
|
|
|
|
|
* pytest now warns when a callable ids raises in a parametrized test. Thanks @fogo for the PR.
|
|
|
|
|
|
* It is now possible to skip test classes from being collected by setting a
|
|
|
|
|
|
__test__ attribute to False in the class body (#2007). Thanks
|
|
|
|
|
|
to @syre for the report and @lwm for the PR.
|
|
|
|
|
|
* Change junitxml.py to produce reports that comply with Junitxml schema.
|
|
|
|
|
|
If the same test fails with failure in call and then errors in teardown
|
|
|
|
|
|
we split testcase element into two, one containing the error and the other
|
|
|
|
|
|
the failure. (#2228) Thanks to @kkoukiou for the PR.
|
|
|
|
|
|
* Testcase reports with a url attribute will now properly write this to junitxml.
|
|
|
|
|
|
Thanks @fushi for the PR (#1874).
|
|
|
|
|
|
* Remove common items from dict comparision output when verbosity=1. Also update
|
|
|
|
|
|
the truncation message to make it clearer that pytest truncates all
|
|
|
|
|
|
assertion messages if verbosity < 2 (#1512).
|
|
|
|
|
|
Thanks @mattduck for the PR
|
|
|
|
|
|
* --pdbcls no longer implies --pdb. This makes it possible to use
|
|
|
|
|
|
addopts=--pdbcls=module.SomeClass on pytest.ini. Thanks @davidszotten for
|
|
|
|
|
|
the PR (#1952).
|
|
|
|
|
|
* fix #2013: turn RecordedWarning into namedtuple,
|
|
|
|
|
|
to give it a comprehensible repr while preventing unwarranted modification.
|
|
|
|
|
|
* fix #2208: ensure a iteration limit for _pytest.compat.get_real_func.
|
|
|
|
|
|
Thanks @RonnyPfannschmidt for the report and PR.
|
|
|
|
|
|
* Hooks are now verified after collection is complete, rather than right after loading installed plugins. This
|
|
|
|
|
|
makes it easy to write hooks for plugins which will be loaded during collection, for example using the
|
|
|
|
|
|
pytest_plugins special variable (#1821).
|
|
|
|
|
|
Thanks @nicoddemus for the PR.
|
|
|
|
|
|
* Modify pytest_make_parametrize_id() hook to accept argname as an
|
|
|
|
|
|
additional parameter.
|
|
|
|
|
|
Thanks @unsignedint for the PR.
|
|
|
|
|
|
* Add venv to the default norecursedirs setting.
|
|
|
|
|
|
Thanks @The-Compiler for the PR.
|
|
|
|
|
|
* PluginManager.import_plugin now accepts unicode plugin names in Python 2.
|
|
|
|
|
|
Thanks @reutsharabani for the PR.
|
|
|
|
|
|
* fix #2308: When using both --lf and --ff, only the last failed tests are run.
|
|
|
|
|
|
Thanks @ojii for the PR.
|
|
|
|
|
|
* Replace minor/patch level version numbers in the documentation with placeholders.
|
|
|
|
|
|
This significantly reduces change-noise as different contributors regnerate
|
|
|
|
|
|
the documentation on different platforms.
|
|
|
|
|
|
Thanks @RonnyPfannschmidt for the PR.
|
|
|
|
|
|
* fix #2391: consider pytest_plugins on all plugin modules
|
|
|
|
|
|
Thanks @RonnyPfannschmidt for the PR.
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
* Fix AttributeError on sys.stdout.buffer / sys.stderr.buffer
|
|
|
|
|
|
while using capsys fixture in python 3. (#1407).
|
|
|
|
|
|
Thanks to @asottile.
|
|
|
|
|
|
* Change capture.py's DontReadFromInput class to throw io.UnsupportedOperation errors rather
|
|
|
|
|
|
than ValueErrors in the fileno method (#2276).
|
|
|
|
|
|
Thanks @metasyn and @vlad-dragos for the PR.
|
|
|
|
|
|
* Fix exception formatting while importing modules when the exception message
|
|
|
|
|
|
contains non-ascii characters (#2336).
|
|
|
|
|
|
Thanks @fabioz for the report and @nicoddemus for the PR.
|
|
|
|
|
|
* Added documentation related to issue (#1937)
|
|
|
|
|
|
Thanks @skylarjhdownes for the PR.
|
|
|
|
|
|
* Allow collecting files with any file extension as Python modules (#2369).
|
|
|
|
|
|
Thanks @Kodiologist for the PR.
|
|
|
|
|
|
* Show the correct error message when collect "parametrize" func with wrong args (#2383).
|
|
|
|
|
|
Thanks @The-Compiler for the report and @robin0371 for the PR.
|
|
|
|
|
|
|
2017-04-19 16:05:53 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Mar 30 09:29:28 UTC 2017 - aloisio@gmx.com
|
|
|
|
|
|
|
|
|
|
|
|
- Update to version 3.0.7
|
|
|
|
|
|
* Fix issue in assertion rewriting breaking due to modules
|
|
|
|
|
|
silently discarding other modules when importing fails
|
|
|
|
|
|
Notably, importing the `anydbm` module is fixed.
|
|
|
|
|
|
(`#2248`_). Thanks `@pfhayes`_ for the PR.
|
|
|
|
|
|
* junitxml: Fix problematic case where system-out tag
|
|
|
|
|
|
occured twice per testcase element in the XML report.
|
|
|
|
|
|
Thanks `@kkoukiou`_ for the PR.
|
|
|
|
|
|
* Fix regression, pytest now skips unittest correctly if run
|
|
|
|
|
|
with ``--pdb`` (`#2137`_). Thanks to `@gst`_ for the report
|
|
|
|
|
|
and `@mbyt`_ for the PR.
|
|
|
|
|
|
* Ignore exceptions raised from descriptors (e.g.
|
|
|
|
|
|
properties) during Python test collection (`#2234`_).
|
|
|
|
|
|
Thanks to `@bluetech`_.
|
|
|
|
|
|
* ``--override-ini`` now correctly overrides some
|
|
|
|
|
|
fundamental options like ``python_files`` (`#2238`_).
|
|
|
|
|
|
Thanks `@sirex`_ for the report and `@nicoddemus`_ for the
|
|
|
|
|
|
PR.
|
|
|
|
|
|
* Replace ``raise StopIteration`` usages in the code by
|
|
|
|
|
|
simple ``returns`` to finish generators, in accordance to
|
|
|
|
|
|
`PEP-479`_ (`#2160`_). Thanks `@tgoodlet`_ for the report
|
|
|
|
|
|
and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Fix internal errors when an unprintable ``AssertionError``
|
|
|
|
|
|
is raised inside a test. Thanks `@omerhadari`_ for the PR.
|
|
|
|
|
|
* Skipping plugin now also works with test items generated
|
|
|
|
|
|
by custom collectors (`#2231`_). Thanks to `@vidartf`_.
|
|
|
|
|
|
* Fix trailing whitespace in console output if no .ini file
|
|
|
|
|
|
presented (`#2281`_). Thanks `@fbjorn`_ for the PR.
|
|
|
|
|
|
* Conditionless ``xfail`` markers no longer rely on the
|
|
|
|
|
|
underlying test item being an instance of ``PyobjMixin``,
|
|
|
|
|
|
and can therefore apply to tests not collected by the
|
|
|
|
|
|
built-in python test collector. Thanks `@barneygale`_ for
|
|
|
|
|
|
the PR.
|
|
|
|
|
|
|
|
|
|
|
|
- Updated source URL
|
|
|
|
|
|
|
2017-02-27 17:33:58 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Feb 23 14:40:25 UTC 2017 - jmatejek@suse.com
|
|
|
|
|
|
|
|
|
|
|
|
- update for singlespec
|
|
|
|
|
|
- update to 3.0.6
|
|
|
|
|
|
* fixed tests in python 3.6
|
|
|
|
|
|
- only use Python 3 to build docs
|
|
|
|
|
|
|
2016-09-20 11:23:40 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Fri Sep 16 14:25:04 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- Fix download url.
|
|
|
|
|
|
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Thu Sep 15 22:20:01 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 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`_).
|
|
|
|
|
|
- update to version 3.0.1
|
|
|
|
|
|
* Fix regression when ``importorskip`` is used at module level (`#1822`_).
|
|
|
|
|
|
Thanks `@jaraco`_ and `@The-Compiler`_ for the report and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Fix parametrization scope when session fixtures are used in conjunction
|
|
|
|
|
|
with normal parameters in the same call (`#1832`_).
|
|
|
|
|
|
Thanks `@The-Compiler`_ for the report, `@Kingdread`_ and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Fix internal error when parametrizing tests or fixtures using an empty ``ids`` argument (`#1849`_).
|
|
|
|
|
|
Thanks `@OPpuolitaival`_ for the report and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Fix loader error when running ``pytest`` embedded in a zipfile.
|
|
|
|
|
|
Thanks `@mbachry`_ for the PR.
|
|
|
|
|
|
- update to version 3.0.0
|
|
|
|
|
|
+ Incompatible changes
|
|
|
|
|
|
* Reinterpretation mode has now been removed. Only plain and rewrite
|
|
|
|
|
|
mode are available, consequently the ``--assert=reinterp`` option is
|
|
|
|
|
|
no longer available. Thanks `@flub`_ for the PR.
|
|
|
|
|
|
* The following deprecated commandline options were removed:
|
|
|
|
|
|
* ``--genscript``: no longer supported;
|
|
|
|
|
|
> ``--no-assert``: use ``--assert=plain`` instead;
|
|
|
|
|
|
> ``--nomagic``: use ``--assert=plain`` instead;
|
|
|
|
|
|
> ``--report``: use ``-r`` instead;
|
|
|
|
|
|
* ImportErrors in plugins now are a fatal error instead of issuing a
|
|
|
|
|
|
pytest warning (`#1479`_). Thanks to `@The-Compiler`_ for the PR.
|
|
|
|
|
|
* Removed support code for Python 3 versions < 3.3 (`#1627`_).
|
|
|
|
|
|
* Removed all ``py.test-X*`` entry points. The versioned, suffixed entry points
|
|
|
|
|
|
were never documented and a leftover from a pre-virtualenv era. These entry
|
|
|
|
|
|
points also created broken entry points in wheels, so removing them also
|
|
|
|
|
|
removes a source of confusion for users (`#1632`_).
|
|
|
|
|
|
Thanks `@obestwalter`_ for the PR.
|
|
|
|
|
|
* ``pytest.skip()`` now raises an error when used to decorate a test function,
|
|
|
|
|
|
as opposed to its original intent (to imperatively skip a test inside a test function). Previously
|
|
|
|
|
|
this usage would cause the entire module to be skipped (`#607`_).
|
|
|
|
|
|
Thanks `@omarkohl`_ for the complete PR (`#1519`_).
|
|
|
|
|
|
* Exit tests if a collection error occurs. A poll indicated most users will hit CTRL-C
|
|
|
|
|
|
anyway as soon as they see collection errors, so pytest might as well make that the default behavior (`#1421`_).
|
|
|
|
|
|
A ``--continue-on-collection-errors`` option has been added to restore the previous behaviour.
|
|
|
|
|
|
Thanks `@olegpidsadnyi`_ and `@omarkohl`_ for the complete PR (`#1628`_).
|
|
|
|
|
|
* Renamed the pytest ``pdb`` module (plugin) into ``debugging`` to avoid clashes with the builtin ``pdb`` module.
|
|
|
|
|
|
* Raise a helpful failure message when requesting a parametrized fixture at runtime,
|
|
|
|
|
|
e.g. with ``request.getfixturevalue``. Previously these parameters were simply
|
|
|
|
|
|
never defined, so a fixture decorated like ``@pytest.fixture(params=[0, 1, 2])``
|
|
|
|
|
|
only ran once (`#460`_).
|
|
|
|
|
|
Thanks to `@nikratio`_ for the bug report, `@RedBeardCode`_ and `@tomviner`_ for the PR.
|
|
|
|
|
|
* ``_pytest.monkeypatch.monkeypatch`` class has been renamed to ``_pytest.monkeypatch.MonkeyPatch``
|
|
|
|
|
|
so it doesn't conflict with the ``monkeypatch`` fixture.
|
|
|
|
|
|
* ``--exitfirst / -x`` can now be overridden by a following ``--maxfail=N``
|
|
|
|
|
|
and is just a synonym for ``--maxfail=1``.
|
|
|
|
|
|
+ New Features
|
|
|
|
|
|
* Support nose-style ``__test__`` attribute on methods of classes,
|
|
|
|
|
|
including unittest-style Classes. If set to ``False``, the test will not be
|
|
|
|
|
|
collected.
|
|
|
|
|
|
* New ``doctest_namespace`` fixture for injecting names into the
|
|
|
|
|
|
namespace in which doctests run.
|
|
|
|
|
|
Thanks `@milliams`_ for the complete PR (`#1428`_).
|
|
|
|
|
|
* New ``--doctest-report`` option available to change the output format of diffs
|
|
|
|
|
|
when running (failing) doctests (implements `#1749`_).
|
|
|
|
|
|
Thanks `@hartym`_ for the PR.
|
|
|
|
|
|
* New ``name`` argument to ``pytest.fixture`` decorator which allows a custom name
|
|
|
|
|
|
for a fixture (to solve the funcarg-shadowing-fixture problem).
|
|
|
|
|
|
Thanks `@novas0x2a`_ for the complete PR (`#1444`_).
|
|
|
|
|
|
* New ``approx()`` function for easily comparing floating-point numbers in
|
|
|
|
|
|
tests.
|
|
|
|
|
|
Thanks `@kalekundert`_ for the complete PR (`#1441`_).
|
|
|
|
|
|
* Ability to add global properties in the final xunit output file by accessing
|
|
|
|
|
|
the internal ``junitxml`` plugin (experimental).
|
|
|
|
|
|
Thanks `@tareqalayan`_ for the complete PR `#1454`_).
|
|
|
|
|
|
* New ``ExceptionInfo.match()`` method to match a regular expression on the
|
|
|
|
|
|
string representation of an exception (`#372`_).
|
|
|
|
|
|
Thanks `@omarkohl`_ for the complete PR (`#1502`_).
|
|
|
|
|
|
* ``__tracebackhide__`` can now also be set to a callable which then can decide
|
|
|
|
|
|
whether to filter the traceback based on the ``ExceptionInfo`` object passed
|
|
|
|
|
|
to it. Thanks `@The-Compiler`_ for the complete PR (`#1526`_).
|
|
|
|
|
|
* New ``pytest_make_parametrize_id(config, val)`` hook which can be used by plugins to provide
|
|
|
|
|
|
friendly strings for custom types.
|
|
|
|
|
|
Thanks `@palaviv`_ for the PR.
|
|
|
|
|
|
* ``capsys`` and ``capfd`` now have a ``disabled()`` context-manager method, which
|
|
|
|
|
|
can be used to temporarily disable capture within a test.
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* New cli flag ``--fixtures-per-test``: shows which fixtures are being used
|
|
|
|
|
|
for each selected test item. Features doc strings of fixtures by default.
|
|
|
|
|
|
Can also show where fixtures are defined if combined with ``-v``.
|
|
|
|
|
|
Thanks `@hackebrot`_ for the PR.
|
|
|
|
|
|
* Introduce ``pytest`` command as recommended entry point. Note that ``py.test``
|
|
|
|
|
|
still works and is not scheduled for removal. Closes proposal
|
|
|
|
|
|
`#1629`_. Thanks `@obestwalter`_ and `@davehunt`_ for the complete PR
|
|
|
|
|
|
(`#1633`_).
|
|
|
|
|
|
* New cli flags:
|
|
|
|
|
|
> ``--setup-plan``: performs normal collection and reports
|
|
|
|
|
|
the potential setup and teardown and does not execute any fixtures and tests;
|
|
|
|
|
|
> ``--setup-only``: performs normal collection, executes setup and teardown of
|
|
|
|
|
|
fixtures and reports them;
|
|
|
|
|
|
> ``--setup-show``: performs normal test execution and additionally shows
|
|
|
|
|
|
setup and teardown of fixtures;
|
|
|
|
|
|
> ``--keep-duplicates``: py.test now ignores duplicated paths given in the command
|
|
|
|
|
|
line. To retain the previous behavior where the same test could be run multiple
|
|
|
|
|
|
times by specifying it in the command-line multiple times, pass the ``--keep-duplicates``
|
|
|
|
|
|
argument (`#1609`_);
|
|
|
|
|
|
Thanks `@d6e`_, `@kvas-it`_, `@sallner`_, `@ioggstream`_ and `@omarkohl`_ for the PRs.
|
|
|
|
|
|
* New CLI flag ``--override-ini``/``-o``: overrides values from the ini file.
|
|
|
|
|
|
For example: ``"-o xfail_strict=True"``'.
|
|
|
|
|
|
Thanks `@blueyed`_ and `@fengxx`_ for the PR.
|
|
|
|
|
|
* New hooks:
|
|
|
|
|
|
> ``pytest_fixture_setup(fixturedef, request)``: executes fixture setup;
|
|
|
|
|
|
> ``pytest_fixture_post_finalizer(fixturedef)``: called after the fixture's
|
|
|
|
|
|
finalizer and has access to the fixture's result cache.
|
|
|
|
|
|
Thanks `@d6e`_, `@sallner`_.
|
|
|
|
|
|
* Issue warnings for asserts whose test is a tuple literal. Such asserts will
|
|
|
|
|
|
never fail because tuples are always truthy and are usually a mistake
|
|
|
|
|
|
(see `#1562`_). Thanks `@kvas-it`_, for the PR.
|
|
|
|
|
|
* Allow passing a custom debugger class (e.g. ``--pdbcls=IPython.core.debugger:Pdb``).
|
|
|
|
|
|
Thanks to `@anntzer`_ for the PR.
|
|
|
|
|
|
+ Changes
|
|
|
|
|
|
* Plugins now benefit from assertion rewriting. Thanks
|
|
|
|
|
|
`@sober7`_, `@nicoddemus`_ and `@flub`_ for the PR.
|
|
|
|
|
|
* Change ``report.outcome`` for ``xpassed`` tests to ``"passed"`` in non-strict
|
|
|
|
|
|
mode and ``"failed"`` in strict mode. Thanks to `@hackebrot`_ for the PR
|
|
|
|
|
|
(`#1795`_) and `@gprasad84`_ for report (`#1546`_).
|
|
|
|
|
|
* Tests marked with ``xfail(strict=False)`` (the default) now appear in
|
|
|
|
|
|
JUnitXML reports as passing tests instead of skipped.
|
|
|
|
|
|
Thanks to `@hackebrot`_ for the PR (`#1795`_).
|
|
|
|
|
|
* Highlight path of the file location in the error report to make it easier to copy/paste.
|
|
|
|
|
|
Thanks `@suzaku`_ for the PR (`#1778`_).
|
|
|
|
|
|
* Fixtures marked with ``@pytest.fixture`` can now use ``yield`` statements exactly like
|
|
|
|
|
|
those marked with the ``@pytest.yield_fixture`` decorator. This change renders
|
|
|
|
|
|
``@pytest.yield_fixture`` deprecated and makes ``@pytest.fixture`` with ``yield`` statements
|
|
|
|
|
|
the preferred way to write teardown code (`#1461`_).
|
|
|
|
|
|
Thanks `@csaftoiu`_ for bringing this to attention and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Explicitly passed parametrize ids do not get escaped to ascii (`#1351`_).
|
|
|
|
|
|
Thanks `@ceridwen`_ for the PR.
|
|
|
|
|
|
* Fixtures are now sorted in the error message displayed when an unknown
|
|
|
|
|
|
fixture is declared in a test function.
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* ``pytest_terminal_summary`` hook now receives the ``exitstatus``
|
|
|
|
|
|
of the test session as argument. Thanks `@blueyed`_ for the PR (`#1809`_).
|
|
|
|
|
|
* Parametrize ids can accept ``None`` as specific test id, in which case the
|
|
|
|
|
|
automatically generated id for that argument will be used.
|
|
|
|
|
|
Thanks `@palaviv`_ for the complete PR (`#1468`_).
|
|
|
|
|
|
* The parameter to xunit-style setup/teardown methods (``setup_method``,
|
|
|
|
|
|
``setup_module``, etc.) is now optional and may be omitted.
|
|
|
|
|
|
Thanks `@okken`_ for bringing this to attention and `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Improved automatic id generation selection in case of duplicate ids in
|
|
|
|
|
|
parametrize.
|
|
|
|
|
|
Thanks `@palaviv`_ for the complete PR (`#1474`_).
|
|
|
|
|
|
* Now pytest warnings summary is shown up by default. Added a new flag
|
|
|
|
|
|
``--disable-pytest-warnings`` to explicitly disable the warnings summary (`#1668`_).
|
|
|
|
|
|
* Make ImportError during collection more explicit by reminding
|
|
|
|
|
|
the user to check the name of the test module/package(s) (`#1426`_).
|
|
|
|
|
|
Thanks `@omarkohl`_ for the complete PR (`#1520`_).
|
|
|
|
|
|
* Add ``build/`` and ``dist/`` to the default ``--norecursedirs`` list. Thanks
|
|
|
|
|
|
`@mikofski`_ for the report and `@tomviner`_ for the PR (`#1544`_).
|
|
|
|
|
|
* ``pytest.raises`` in the context manager form accepts a custom
|
|
|
|
|
|
``message`` to raise when no exception occurred.
|
|
|
|
|
|
Thanks `@palaviv`_ for the complete PR (`#1616`_).
|
|
|
|
|
|
* ``conftest.py`` files now benefit from assertion rewriting; previously it
|
|
|
|
|
|
was only available for test modules. Thanks `@flub`_, `@sober7`_ and
|
|
|
|
|
|
`@nicoddemus`_ for the PR (`#1619`_).
|
|
|
|
|
|
* Text documents without any doctests no longer appear as "skipped".
|
|
|
|
|
|
Thanks `@graingert`_ for reporting and providing a full PR (`#1580`_).
|
|
|
|
|
|
* Ensure that a module within a namespace package can be found when it
|
|
|
|
|
|
is specified on the command line together with the ``--pyargs``
|
|
|
|
|
|
option. Thanks to `@taschini`_ for the PR (`#1597`_).
|
|
|
|
|
|
* Always include full assertion explanation during assertion rewriting. The previous behaviour was hiding
|
|
|
|
|
|
sub-expressions that happened to be ``False``, assuming this was redundant information.
|
|
|
|
|
|
Thanks `@bagerard`_ for reporting (`#1503`_). Thanks to `@davehunt`_ and
|
|
|
|
|
|
`@tomviner`_ for the PR.
|
|
|
|
|
|
* ``OptionGroup.addoption()`` now checks if option names were already
|
|
|
|
|
|
added before, to make it easier to track down issues like `#1618`_.
|
|
|
|
|
|
Before, you only got exceptions later from ``argparse`` library,
|
|
|
|
|
|
giving no clue about the actual reason for double-added options.
|
|
|
|
|
|
* ``yield``-based tests are considered deprecated and will be removed in pytest-4.0.
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* ``[pytest]`` sections in ``setup.cfg`` files should now be named ``[tool:pytest]``
|
|
|
|
|
|
to avoid conflicts with other distutils commands (see `#567`_). ``[pytest]`` sections in
|
|
|
|
|
|
``pytest.ini`` or ``tox.ini`` files are supported and unchanged.
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Using ``pytest_funcarg__`` prefix to declare fixtures is considered deprecated and will be
|
|
|
|
|
|
removed in pytest-4.0 (`#1684`_).
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Passing a command-line string to ``pytest.main()`` is considered deprecated and scheduled
|
|
|
|
|
|
for removal in pytest-4.0. It is recommended to pass a list of arguments instead (`#1723`_).
|
|
|
|
|
|
* Rename ``getfuncargvalue`` to ``getfixturevalue``. ``getfuncargvalue`` is
|
|
|
|
|
|
still present but is now considered deprecated. Thanks to `@RedBeardCode`_ and `@tomviner`_
|
|
|
|
|
|
for the PR (`#1626`_).
|
|
|
|
|
|
* ``optparse`` type usage now triggers DeprecationWarnings (`#1740`_).
|
|
|
|
|
|
* ``optparse`` backward compatibility supports float/complex types (`#457`_).
|
|
|
|
|
|
* Refined logic for determining the ``rootdir``, considering only valid
|
|
|
|
|
|
paths which fixes a number of issues: `#1594`_, `#1435`_ and `#1471`_.
|
|
|
|
|
|
Updated the documentation according to current behavior. Thanks to
|
|
|
|
|
|
`@blueyed`_, `@davehunt`_ and `@matthiasha`_ for the PR.
|
|
|
|
|
|
* Always include full assertion explanation. The previous behaviour was hiding
|
|
|
|
|
|
sub-expressions that happened to be False, assuming this was redundant information.
|
|
|
|
|
|
Thanks `@bagerard`_ for reporting (`#1503`_). Thanks to `@davehunt`_ and
|
|
|
|
|
|
`@tomviner`_ for PR.
|
|
|
|
|
|
* Better message in case of not using parametrized variable (see `#1539`_).
|
|
|
|
|
|
Thanks to `@tramwaj29`_ for the PR.
|
|
|
|
|
|
* Updated docstrings with a more uniform style.
|
|
|
|
|
|
* Add stderr write for ``pytest.exit(msg)`` during startup. Previously the message was never shown.
|
|
|
|
|
|
Thanks `@BeyondEvil`_ for reporting `#1210`_. Thanks to `@JonathonSonesen`_ and
|
|
|
|
|
|
`@tomviner`_ for the PR.
|
|
|
|
|
|
* No longer display the incorrect test deselection reason (`#1372`_).
|
|
|
|
|
|
Thanks `@ronnypfannschmidt`_ for the PR.
|
|
|
|
|
|
* The ``--resultlog`` command line option has been deprecated: it is little used
|
|
|
|
|
|
and there are more modern and better alternatives (see `#830`_).
|
|
|
|
|
|
Thanks `@nicoddemus`_ for the PR.
|
|
|
|
|
|
* Improve error message with fixture lookup errors: add an 'E' to the first
|
|
|
|
|
|
line and '>' to the rest. Fixes `#717`_. Thanks `@blueyed`_ for reporting and
|
|
|
|
|
|
a PR, `@eolo999`_ for the initial PR and `@tomviner`_ for his guidance during
|
|
|
|
|
|
EuroPython2016 sprint.
|
|
|
|
|
|
+ Bug Fixes
|
|
|
|
|
|
* Parametrize now correctly handles duplicated test ids.
|
|
|
|
|
|
* Fix internal error issue when the ``method`` argument is missing for
|
|
|
|
|
|
``teardown_method()`` (`#1605`_).
|
|
|
|
|
|
* Fix exception visualization in case the current working directory (CWD) gets
|
|
|
|
|
|
deleted during testing (`#1235`_). Thanks `@bukzor`_ for reporting. PR by
|
|
|
|
|
|
`@marscher`_.
|
|
|
|
|
|
* Improve test output for logical expression with brackets (`#925`_).
|
|
|
|
|
|
Thanks `@DRMacIver`_ for reporting and `@RedBeardCode`_ for the PR.
|
|
|
|
|
|
* Create correct diff for strings ending with newlines (`#1553`_).
|
|
|
|
|
|
Thanks `@Vogtinator`_ for reporting and `@RedBeardCode`_ and
|
|
|
|
|
|
`@tomviner`_ for the PR.
|
|
|
|
|
|
* ``ConftestImportFailure`` now shows the traceback making it easier to
|
|
|
|
|
|
identify bugs in ``conftest.py`` files (`#1516`_). Thanks `@txomon`_ for
|
|
|
|
|
|
the PR.
|
|
|
|
|
|
* Text documents without any doctests no longer appear as "skipped".
|
|
|
|
|
|
Thanks `@graingert`_ for reporting and providing a full PR (`#1580`_).
|
|
|
|
|
|
* Fixed collection of classes with custom ``__new__`` method.
|
|
|
|
|
|
Fixes `#1579`_. Thanks to `@Stranger6667`_ for the PR.
|
|
|
|
|
|
* Fixed scope overriding inside metafunc.parametrize (`#634`_).
|
|
|
|
|
|
Thanks to `@Stranger6667`_ for the PR.
|
|
|
|
|
|
* Fixed the total tests tally in junit xml output (`#1798`_).
|
|
|
|
|
|
Thanks to `@cryporchild`_ for the PR.
|
|
|
|
|
|
* Fixed off-by-one error with lines from ``request.node.warn``.
|
|
|
|
|
|
Thanks to `@blueyed`_ for the PR.
|
|
|
|
|
|
- update to version 2.9.2:
|
|
|
|
|
|
* fix #510: skip tests where one parameterize dimension was empty
|
|
|
|
|
|
thanks Alex Stapleton for the Report and @RonnyPfannschmidt for
|
|
|
|
|
|
the PR
|
|
|
|
|
|
* Fix Xfail does not work with condition keyword argument. Thanks
|
|
|
|
|
|
@astraw38 for reporting the issue (#1496) and @tomviner for PR the
|
|
|
|
|
|
(#1524).
|
|
|
|
|
|
* Fix win32 path issue when puttinging custom config file with
|
|
|
|
|
|
absolute path in pytest.main("-c your_absolute_path").
|
|
|
|
|
|
* Fix maximum recursion depth detection when raised error class is
|
|
|
|
|
|
not aware of unicode/encoded bytes. Thanks @prusse-martin for the
|
|
|
|
|
|
PR (#1506).
|
|
|
|
|
|
* Fix pytest.mark.skip mark when used in strict mode. Thanks
|
|
|
|
|
|
@pquentin for the PR and @RonnyPfannschmidt for showing how to fix
|
|
|
|
|
|
the bug.
|
|
|
|
|
|
* Minor improvements and fixes to the documentation. Thanks
|
|
|
|
|
|
@omarkohl for the PR.
|
|
|
|
|
|
* Fix --fixtures to show all fixture definitions as opposed to just
|
|
|
|
|
|
one per fixture name. Thanks to @hackebrot for the PR.
|
|
|
|
|
|
- update to version 2.9.1:
|
|
|
|
|
|
* Improve error message when a plugin fails to load. Thanks
|
|
|
|
|
|
@nicoddemus for the PR.
|
|
|
|
|
|
* Fix (#1178): pytest.fail with non-ascii characters raises an
|
|
|
|
|
|
internal pytest error. Thanks @nicoddemus for the PR.
|
|
|
|
|
|
* Fix (#469): junit parses report.nodeid incorrectly, when params
|
|
|
|
|
|
IDs contain ::. Thanks @tomviner for the PR (#1431).
|
|
|
|
|
|
* Fix (#578): SyntaxErrors containing non-ascii lines at the point
|
|
|
|
|
|
of failure generated an internal py.test error. Thanks @asottile
|
|
|
|
|
|
for the report and @nicoddemus for the PR.
|
|
|
|
|
|
* Fix (#1437): When passing in a bytestring regex pattern to
|
|
|
|
|
|
parameterize attempt to decode it as utf-8 ignoring errors.
|
|
|
|
|
|
* Fix (#649): parametrized test nodes cannot be specified to run on
|
|
|
|
|
|
the command line.
|
|
|
|
|
|
- update to version 2.9.0:
|
|
|
|
|
|
* New Features
|
|
|
|
|
|
+ New pytest.mark.skip mark, which unconditionally skips marked
|
|
|
|
|
|
tests. Thanks @MichaelAquilina for the complete PR (#1040).
|
|
|
|
|
|
+ --doctest-glob may now be passed multiple times in the
|
|
|
|
|
|
command-line. Thanks @jab and @nicoddemus for the PR.
|
|
|
|
|
|
+ New -rp and -rP reporting options give the summary and full
|
|
|
|
|
|
output of passing tests, respectively. Thanks to @codewarrior0 for
|
|
|
|
|
|
the PR.
|
|
|
|
|
|
+ pytest.mark.xfail now has a strict option which makes XPASS
|
|
|
|
|
|
tests to fail the test suite, defaulting to False. There’s also a
|
|
|
|
|
|
xfail_strict ini option that can be used to configure it
|
|
|
|
|
|
project-wise. Thanks @rabbbit for the request and @nicoddemus for
|
|
|
|
|
|
the PR (#1355).
|
|
|
|
|
|
+ Parser.addini now supports options of type bool. Thanks
|
|
|
|
|
|
@nicoddemus for the PR.
|
|
|
|
|
|
+ New ALLOW_BYTES doctest option strips b prefixes from byte
|
|
|
|
|
|
strings in doctest output (similar to ALLOW_UNICODE). Thanks
|
|
|
|
|
|
@jaraco for the request and @nicoddemus for the PR (#1287).
|
|
|
|
|
|
+ give a hint on KeyboardInterrupt to use the –fulltrace option to
|
|
|
|
|
|
show the errors, this fixes #1366. Thanks to @hpk42 for the report
|
|
|
|
|
|
and @RonnyPfannschmidt for the PR.
|
|
|
|
|
|
+ catch IndexError exceptions when getting exception source
|
|
|
|
|
|
location. This fixes pytest internal error for dynamically
|
|
|
|
|
|
generated code (fixtures and tests) where source lines are fake by
|
|
|
|
|
|
intention
|
|
|
|
|
|
* Changes
|
|
|
|
|
|
+ Important: py.code has been merged into the pytest repository as
|
|
|
|
|
|
pytest._code. This decision was made because py.code had very few
|
|
|
|
|
|
uses outside pytest and the fact that it was in a different
|
|
|
|
|
|
repository made it difficult to fix bugs on its code in a timely
|
|
|
|
|
|
manner. The team hopes with this to be able to better refactor out
|
|
|
|
|
|
and improve that code. This change shouldn’t affect users, but it
|
|
|
|
|
|
is useful to let users aware if they encounter any strange
|
|
|
|
|
|
behavior.
|
|
|
|
|
|
+ Keep in mind that the code for pytest._code is private and
|
|
|
|
|
|
experimental, so you definitely should not import it explicitly!
|
|
|
|
|
|
+ Please note that the original py.code is still available in
|
|
|
|
|
|
pylib.
|
|
|
|
|
|
+ pytest_enter_pdb now optionally receives the pytest config
|
|
|
|
|
|
object. Thanks @nicoddemus for the PR.
|
|
|
|
|
|
+ Removed code and documentation for Python 2.5 or lower versions,
|
|
|
|
|
|
including removal of the obsolete _pytest.assertion.oldinterpret
|
|
|
|
|
|
module. Thanks @nicoddemus for the PR (#1226).
|
|
|
|
|
|
+ Comparisons now always show up in full when CI or BUILD_NUMBER
|
|
|
|
|
|
is found in the environment, even when -vv isn’t used. Thanks
|
|
|
|
|
|
@The-Compiler for the PR.
|
|
|
|
|
|
+ --lf and --ff now support long names: --last-failed and
|
|
|
|
|
|
--failed-first respectively. Thanks @MichaelAquilina for the PR.
|
|
|
|
|
|
+ Added expected exceptions to pytest.raises fail message
|
|
|
|
|
|
+ Collection only displays progress (“collecting X items”) when in
|
|
|
|
|
|
a terminal. This avoids cluttering the output when using
|
|
|
|
|
|
--color=yes to obtain colors in CI integrations systems (#1397).
|
|
|
|
|
|
* Bug Fixes
|
|
|
|
|
|
+ The -s and -c options should now work under xdist;
|
|
|
|
|
|
Config.fromdictargs now represents its input much more
|
|
|
|
|
|
faithfully. Thanks to @bukzor for the complete PR (#680).
|
|
|
|
|
|
+ Fix (#1290): support Python 3.5’s @ operator in assertion
|
|
|
|
|
|
rewriting. Thanks @Shinkenjoe for report with test case and
|
|
|
|
|
|
@tomviner for the PR.
|
|
|
|
|
|
+ Fix formatting utf-8 explanation messages (#1379). Thanks @biern
|
|
|
|
|
|
for the PR.
|
|
|
|
|
|
+ Fix traceback style docs to describe all of the available
|
|
|
|
|
|
options (auto/long/short/line/native/no), with auto being the
|
|
|
|
|
|
default since v2.6. Thanks @hackebrot for the PR.
|
|
|
|
|
|
+ Fix (#1422): junit record_xml_property doesn’t allow multiple
|
|
|
|
|
|
records with same name.
|
|
|
|
|
|
- Move %check to -doc subpackage to avoid dependency loop
|
|
|
|
|
|
with new python3-hypothesis test dependency.
|
|
|
|
|
|
|
2016-02-16 08:27:13 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Mon Feb 1 11:02:42 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- update to version 2.8.7:
|
|
|
|
|
|
* fix #1338: use predictable object resolution for monkeypatch
|
|
|
|
|
|
- changes from version 2.8.6:
|
|
|
|
|
|
* fix #1259: allow for double nodeids in junitxml, this was a
|
|
|
|
|
|
regression failing plugins combinations like pytest-pep8 +
|
|
|
|
|
|
pytest-flakes
|
|
|
|
|
|
* Workaround for exception that occurs in pyreadline when using
|
|
|
|
|
|
--pdb with standard I/O capture enabled. Thanks Erik M. Bray for
|
|
|
|
|
|
the PR.
|
|
|
|
|
|
* fix #900: Better error message in case the target of a monkeypatch
|
|
|
|
|
|
call raises an ImportError.
|
|
|
|
|
|
* fix #1292: monkeypatch calls (setattr, setenv, etc.) are now
|
|
|
|
|
|
O(1). Thanks David R. MacIver for the report and Bruno Oliveira
|
|
|
|
|
|
for the PR.
|
|
|
|
|
|
* fix #1223: captured stdout and stderr are now properly displayed
|
|
|
|
|
|
before entering pdb when --pdb is used instead of being thrown
|
|
|
|
|
|
away. Thanks Cal Leeming for the PR.
|
|
|
|
|
|
* fix #1305: pytest warnings emitted during pytest_terminal_summary
|
|
|
|
|
|
are now properly displayed. Thanks Ionel Maries Cristian for the
|
|
|
|
|
|
report and Bruno Oliveira for the PR.
|
|
|
|
|
|
* fix #628: fixed internal UnicodeDecodeError when doctests contain
|
|
|
|
|
|
unicode. Thanks Jason R. Coombs for the report and Bruno Oliveira
|
|
|
|
|
|
for the PR.
|
|
|
|
|
|
* fix #1334: Add captured stdout to jUnit XML report on setup
|
|
|
|
|
|
error. Thanks Georgy Dyuldin for the PR.
|
|
|
|
|
|
- Update to version 2.8.5
|
|
|
|
|
|
* fix #1243: fixed issue where class attributes injected during
|
|
|
|
|
|
collection could break pytest.
|
|
|
|
|
|
fix #1074: precompute junitxml chunks instead of storing the
|
|
|
|
|
|
whole tree in objects
|
|
|
|
|
|
fix #1238: fix pytest.deprecated_call() receiving multiple
|
|
|
|
|
|
arguments (Regression introduced in 2.8.4).
|
|
|
|
|
|
- update to version 2.8.4:
|
|
|
|
|
|
* fix #1190: deprecated_call() now works when the deprecated
|
|
|
|
|
|
function has been already called by another test in the same
|
|
|
|
|
|
module. Thanks Mikhail Chernykh for the report and Bruno Oliveira
|
|
|
|
|
|
for the PR.
|
|
|
|
|
|
* fix #1198: --pastebin option now works on Python 3. Thanks Mehdy
|
|
|
|
|
|
Khoshnoody for the PR.
|
|
|
|
|
|
* fix #1219: --pastebin now works correctly when captured output
|
|
|
|
|
|
contains non-ascii characters. Thanks Bruno Oliveira for the PR.
|
|
|
|
|
|
* fix #1204: another error when collecting with a nasty
|
|
|
|
|
|
__getattr__(). Thanks Florian Bruhin for the PR.
|
|
|
|
|
|
* fix the summary printed when no tests did run. Thanks Florian
|
|
|
|
|
|
Bruhin for the PR.
|
|
|
|
|
|
* a number of documentation modernizations wrt good
|
|
|
|
|
|
practices. Thanks Bruno Oliveira for the PR.
|
|
|
|
|
|
- update to version 2.8.3:
|
|
|
|
|
|
* fix #1169: add __name__ attribute to testcases in TestCaseFunction
|
|
|
|
|
|
to support the @unittest.skip decorator on functions and methods.
|
|
|
|
|
|
Thanks Lee Kamentsky for the PR.
|
|
|
|
|
|
* fix #1035: collecting tests if test module level obj has
|
|
|
|
|
|
__getattr__(). Thanks Suor for the report and Bruno Oliveira /
|
|
|
|
|
|
Tom Viner for the PR.
|
|
|
|
|
|
* fix #331: don't collect tests if their failure cannot be reported
|
|
|
|
|
|
correctly e.g. they are a callable instance of a class.
|
|
|
|
|
|
* fix #1133: fixed internal error when filtering tracebacks where
|
|
|
|
|
|
one entry belongs to a file which is no longer available. Thanks
|
|
|
|
|
|
Bruno Oliveira for the PR.
|
|
|
|
|
|
* enhancement made to highlight in red the name of the failing tests
|
|
|
|
|
|
so they stand out in the output. Thanks Gabriel Reis for the PR.
|
|
|
|
|
|
* add more talks to the documentation
|
|
|
|
|
|
* extend documentation on the --ignore cli option
|
|
|
|
|
|
* use pytest-runner for setuptools integration
|
|
|
|
|
|
* minor fixes for interaction with OS X El Capitan system integrity
|
|
|
|
|
|
protection (thanks Florian)
|
|
|
|
|
|
|
2015-05-25 21:05:14 +00:00
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
Sun May 24 10:57:07 UTC 2015 - toddrme2178@gmail.com
|
|
|
|
|
|
|
|
|
|
|
|
- Split documentation into separate package to avoid build loop
|
|
|
|
|
|
|