Hello community, here is the log from the commit of package python-pytest for openSUSE:Factory checked in at 2018-03-12 12:01:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-pytest (Old) and /work/SRC/openSUSE:Factory/.python-pytest.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest" Mon Mar 12 12:01:55 2018 rev:34 rq:584625 version:3.4.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-pytest/python-pytest-doc.changes 2018-02-24 16:37:25.089684818 +0100 +++ /work/SRC/openSUSE:Factory/.python-pytest.new/python-pytest-doc.changes 2018-03-12 12:02:31.807220058 +0100 @@ -1,0 +2,6 @@ +Fri Mar 9 08:38:59 UTC 2018 - mimi...@gmail.com + +- update to 3.4.2 +- more in python-pytest.changes + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/python-pytest/python-pytest.changes 2018-03-06 10:43:56.123551326 +0100 +++ /work/SRC/openSUSE:Factory/.python-pytest.new/python-pytest.changes 2018-03-12 12:02:33.079174476 +0100 @@ -1,0 +2,11 @@ +Fri Mar 9 08:37:51 UTC 2018 - mimi...@gmail.com + +- update to 3.4.2 +* Removed progress information when capture option is no. +* Refactor check of bindir from exists to isdir. +* Fix TypeError issue when using approx with a Decimal value. +* Fix reference cycle generated when using the request fixture. +* [tool:pytest] sections in *.cfg files passed by the + -c option are now properly recognized. + +------------------------------------------------------------------- Old: ---- pytest-3.4.1.tar.gz New: ---- pytest-3.4.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-pytest-doc.spec ++++++ --- /var/tmp/diff_new_pack.yVwVMZ/_old 2018-03-12 12:02:34.087138354 +0100 +++ /var/tmp/diff_new_pack.yVwVMZ/_new 2018-03-12 12:02:34.091138210 +0100 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-pytest-doc -Version: 3.4.1 +Version: 3.4.2 Release: 0 Summary: Documentation for python-pytest, a testing tool with autodiscovery License: MIT @@ -57,7 +57,8 @@ %python_exec setup.py test %files -%doc CHANGELOG.rst LICENSE +%doc CHANGELOG.rst %doc doc/build/html +%license LICENSE %changelog ++++++ python-pytest.spec ++++++ --- /var/tmp/diff_new_pack.yVwVMZ/_old 2018-03-12 12:02:34.127136921 +0100 +++ /var/tmp/diff_new_pack.yVwVMZ/_new 2018-03-12 12:02:34.135136634 +0100 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-pytest -Version: 3.4.1 +Version: 3.4.2 Release: 0 Summary: Python testing tool with autodiscovery and detailed asserts License: MIT @@ -83,7 +83,8 @@ %python_uninstall_alternative py.test %files %{python_files} -%doc AUTHORS CHANGELOG.rst LICENSE README.rst +%doc AUTHORS CHANGELOG.rst README.rst +%license LICENSE %python_alternative %{_bindir}/py.test %python_alternative %{_bindir}/pytest %python2_only %{_bindir}/py.test2 ++++++ pytest-3.4.1.tar.gz -> pytest-3.4.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/AUTHORS new/pytest-3.4.2/AUTHORS --- old/pytest-3.4.1/AUTHORS 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/AUTHORS 2018-03-05 23:35:06.000000000 +0100 @@ -197,3 +197,4 @@ Xuecong Liao Zoltán Máté Roland Puntaier +Allan Feldman diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/CHANGELOG.rst new/pytest-3.4.2/CHANGELOG.rst --- old/pytest-3.4.1/CHANGELOG.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/CHANGELOG.rst 2018-03-05 23:35:06.000000000 +0100 @@ -8,6 +8,43 @@ .. towncrier release notes start +Pytest 3.4.2 (2018-03-04) +========================= + +Bug Fixes +--------- + +- Removed progress information when capture option is ``no``. (`#3203 + <https://github.com/pytest-dev/pytest/issues/3203>`_) + +- Refactor check of bindir from ``exists`` to ``isdir``. (`#3241 + <https://github.com/pytest-dev/pytest/issues/3241>`_) + +- Fix ``TypeError`` issue when using ``approx`` with a ``Decimal`` value. + (`#3247 <https://github.com/pytest-dev/pytest/issues/3247>`_) + +- Fix reference cycle generated when using the ``request`` fixture. (`#3249 + <https://github.com/pytest-dev/pytest/issues/3249>`_) + +- ``[tool:pytest]`` sections in ``*.cfg`` files passed by the ``-c`` option are + now properly recognized. (`#3260 + <https://github.com/pytest-dev/pytest/issues/3260>`_) + + +Improved Documentation +---------------------- + +- Add logging plugin to plugins list. (`#3209 + <https://github.com/pytest-dev/pytest/issues/3209>`_) + + +Trivial/Internal Changes +------------------------ + +- Fix minor typo in fixture.rst (`#3259 + <https://github.com/pytest-dev/pytest/issues/3259>`_) + + Pytest 3.4.1 (2018-02-20) ========================= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/PKG-INFO new/pytest-3.4.2/PKG-INFO --- old/pytest-3.4.1/PKG-INFO 2018-02-20 22:05:05.000000000 +0100 +++ new/pytest-3.4.2/PKG-INFO 2018-03-05 23:35:33.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: pytest -Version: 3.4.1 +Version: 3.4.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 @@ -32,6 +32,9 @@ .. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true :target: https://ci.appveyor.com/project/pytestbot/pytest + .. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg + :target: https://www.codetriage.com/pytest-dev/pytest + The ``pytest`` framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/README.rst new/pytest-3.4.2/README.rst --- old/pytest-3.4.1/README.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/README.rst 2018-03-05 23:35:06.000000000 +0100 @@ -23,6 +23,9 @@ .. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true :target: https://ci.appveyor.com/project/pytestbot/pytest +.. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg + :target: https://www.codetriage.com/pytest-dev/pytest + The ``pytest`` framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/_version.py new/pytest-3.4.2/_pytest/_version.py --- old/pytest-3.4.1/_pytest/_version.py 2018-02-20 22:05:05.000000000 +0100 +++ new/pytest-3.4.2/_pytest/_version.py 2018-03-05 23:35:32.000000000 +0100 @@ -1,4 +1,4 @@ # coding: utf-8 # file generated by setuptools_scm # don't change, don't track in version control -version = '3.4.1' +version = '3.4.2' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/config.py new/pytest-3.4.2/_pytest/config.py --- old/pytest-3.4.1/_pytest/config.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/config.py 2018-03-05 23:35:06.000000000 +0100 @@ -1327,10 +1327,14 @@ dirs = get_dirs_from_args(args) if inifile: iniconfig = py.iniconfig.IniConfig(inifile) - try: - inicfg = iniconfig["pytest"] - except KeyError: - inicfg = None + is_cfg_file = str(inifile).endswith('.cfg') + sections = ['tool:pytest', 'pytest'] if is_cfg_file else ['pytest'] + for section in sections: + try: + inicfg = iniconfig[section] + break + except KeyError: + inicfg = None rootdir = get_common_ancestor(dirs) else: ancestor = get_common_ancestor(dirs) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/fixtures.py new/pytest-3.4.2/_pytest/fixtures.py --- old/pytest-3.4.1/_pytest/fixtures.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/fixtures.py 2018-03-05 23:35:06.000000000 +0100 @@ -24,6 +24,12 @@ from _pytest.outcomes import fail, TEST_OUTCOME +@attr.s(frozen=True) +class PseudoFixtureDef(object): + cached_result = attr.ib() + scope = attr.ib() + + def pytest_sessionstart(session): import _pytest.python import _pytest.nodes @@ -440,10 +446,9 @@ fixturedef = self._getnextfixturedef(argname) except FixtureLookupError: if argname == "request": - class PseudoFixtureDef(object): - cached_result = (self, [0], None) - scope = "function" - return PseudoFixtureDef + cached_result = (self, [0], None) + scope = "function" + return PseudoFixtureDef(cached_result, scope) raise # remove indent to prevent the python3 exception # from leaking into the call diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/logging.py new/pytest-3.4.2/_pytest/logging.py --- old/pytest-3.4.1/_pytest/logging.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/logging.py 2018-03-05 23:35:06.000000000 +0100 @@ -1,3 +1,4 @@ +""" Access and control log capturing. """ from __future__ import absolute_import, division, print_function import logging diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/main.py new/pytest-3.4.2/_pytest/main.py --- old/pytest-3.4.1/_pytest/main.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/main.py 2018-03-05 23:35:06.000000000 +0100 @@ -170,7 +170,7 @@ """Attempts to detect if ``path`` is the root of a Virtual Environment by checking for the existence of the appropriate activate script""" bindir = path.join('Scripts' if sys.platform.startswith('win') else 'bin') - if not bindir.exists(): + if not bindir.isdir(): return False activates = ('activate', 'activate.csh', 'activate.fish', 'Activate', 'Activate.bat', 'Activate.ps1') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/python_api.py new/pytest-3.4.2/_pytest/python_api.py --- old/pytest-3.4.1/_pytest/python_api.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/python_api.py 2018-03-05 23:35:06.000000000 +0100 @@ -153,6 +153,8 @@ """ Perform approximate comparisons for single numbers only. """ + DEFAULT_ABSOLUTE_TOLERANCE = 1e-12 + DEFAULT_RELATIVE_TOLERANCE = 1e-6 def __repr__(self): """ @@ -223,7 +225,7 @@ # Figure out what the absolute tolerance should be. ``self.abs`` is # either None or a value specified by the user. - absolute_tolerance = set_default(self.abs, 1e-12) + absolute_tolerance = set_default(self.abs, self.DEFAULT_ABSOLUTE_TOLERANCE) if absolute_tolerance < 0: raise ValueError("absolute tolerance can't be negative: {}".format(absolute_tolerance)) @@ -241,7 +243,7 @@ # we've made sure the user didn't ask for an absolute tolerance only, # because we don't want to raise errors about the relative tolerance if # we aren't even going to use it. - relative_tolerance = set_default(self.rel, 1e-6) * abs(self.expected) + relative_tolerance = set_default(self.rel, self.DEFAULT_RELATIVE_TOLERANCE) * abs(self.expected) if relative_tolerance < 0: raise ValueError("relative tolerance can't be negative: {}".format(absolute_tolerance)) @@ -252,6 +254,13 @@ return max(relative_tolerance, absolute_tolerance) +class ApproxDecimal(ApproxScalar): + from decimal import Decimal + + DEFAULT_ABSOLUTE_TOLERANCE = Decimal('1e-12') + DEFAULT_RELATIVE_TOLERANCE = Decimal('1e-6') + + def approx(expected, rel=None, abs=None, nan_ok=False): """ Assert that two numbers (or two sets of numbers) are equal to each other @@ -401,6 +410,7 @@ from collections import Mapping, Sequence from _pytest.compat import STRING_TYPES as String + from decimal import Decimal # Delegate the comparison to a class that knows how to deal with the type # of the expected value (e.g. int, float, list, dict, numpy.array, etc). @@ -422,6 +432,8 @@ cls = ApproxMapping elif isinstance(expected, Sequence) and not isinstance(expected, String): cls = ApproxSequence + elif isinstance(expected, Decimal): + cls = ApproxDecimal else: cls = ApproxScalar diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/_pytest/terminal.py new/pytest-3.4.2/_pytest/terminal.py --- old/pytest-3.4.1/_pytest/terminal.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/_pytest/terminal.py 2018-03-05 23:35:06.000000000 +0100 @@ -324,6 +324,8 @@ _PROGRESS_LENGTH = len(' [100%]') def _get_progress_information_message(self): + if self.config.getoption('capture') == 'no': + return '' collected = self._session.testscollected if collected: progress = len(self._progress_nodeids_reported) * 100 // collected diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/1810.bugfix.rst new/pytest-3.4.2/changelog/1810.bugfix.rst --- old/pytest-3.4.1/changelog/1810.bugfix.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/1810.bugfix.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Move import of ``doctest.UnexpectedException`` to top-level to avoid possible errors when using ``--pdb``. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3052.bugfix new/pytest-3.4.2/changelog/3052.bugfix --- old/pytest-3.4.1/changelog/3052.bugfix 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3052.bugfix 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Added printing of captured stdout/stderr before entering pdb, and improved a test which was giving false negatives about output capturing. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3060.trivial.rst new/pytest-3.4.2/changelog/3060.trivial.rst --- old/pytest-3.4.1/changelog/3060.trivial.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3060.trivial.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -pytest has changed the publication procedure and is now being published to PyPI directly from Travis. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3161.bugfix.rst new/pytest-3.4.2/changelog/3161.bugfix.rst --- old/pytest-3.4.1/changelog/3161.bugfix.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3161.bugfix.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Fix ordering of tests using parametrized fixtures which can lead to fixtures being created more than necessary. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3166.trivial.rst new/pytest-3.4.2/changelog/3166.trivial.rst --- old/pytest-3.4.1/changelog/3166.trivial.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3166.trivial.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Rename ``ParameterSet._for_parameterize()`` to ``_for_parametrize()`` in order to comply with the naming convention. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3184.bugfix new/pytest-3.4.2/changelog/3184.bugfix --- old/pytest-3.4.1/changelog/3184.bugfix 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3184.bugfix 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Fix bug where logging happening at hooks outside of "test run" hooks would cause an internal error. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3202.doc.rst new/pytest-3.4.2/changelog/3202.doc.rst --- old/pytest-3.4.1/changelog/3202.doc.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3202.doc.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Add Sphinx parameter docs for ``match`` and ``message`` args to ``pytest.raises``. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3206.bugfix.rst new/pytest-3.4.2/changelog/3206.bugfix.rst --- old/pytest-3.4.1/changelog/3206.bugfix.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3206.bugfix.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Detect arguments injected by ``unittest.mock.patch`` decorator correctly when pypi ``mock.patch`` is installed and imported. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/3222.bugfix new/pytest-3.4.2/changelog/3222.bugfix --- old/pytest-3.4.1/changelog/3222.bugfix 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/3222.bugfix 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -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 (like ``pytest.raised()`` without ``match=`` would) instead of complaining about the unmatched text. \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/985.bugfix new/pytest-3.4.2/changelog/985.bugfix --- old/pytest-3.4.1/changelog/985.bugfix 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/985.bugfix 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Fixed output capture handling in doctests on macOS. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/changelog/985.trivial.rst new/pytest-3.4.2/changelog/985.trivial.rst --- old/pytest-3.4.1/changelog/985.trivial.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/changelog/985.trivial.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -Skip failing pdb/doctest test on mac. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/announce/index.rst new/pytest-3.4.2/doc/en/announce/index.rst --- old/pytest-3.4.1/doc/en/announce/index.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/announce/index.rst 2018-03-05 23:35:06.000000000 +0100 @@ -6,6 +6,7 @@ :maxdepth: 2 + release-3.4.2 release-3.4.1 release-3.4.0 release-3.3.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/announce/release-3.4.2.rst new/pytest-3.4.2/doc/en/announce/release-3.4.2.rst --- old/pytest-3.4.1/doc/en/announce/release-3.4.2.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/pytest-3.4.2/doc/en/announce/release-3.4.2.rst 2018-03-05 23:35:06.000000000 +0100 @@ -0,0 +1,28 @@ +pytest-3.4.2 +======================================= + +pytest 3.4.2 has just been released to PyPI. + +This is a bug-fix release, being a drop-in replacement. To upgrade:: + + pip install --upgrade pytest + +The full changelog is available at http://doc.pytest.org/en/latest/changelog.html. + +Thanks to all who contributed to this release, among them: + +* Allan Feldman +* Bruno Oliveira +* Florian Bruhin +* Jason R. Coombs +* Kyle Altendorf +* Maik Figura +* Ronny Pfannschmidt +* codetriage-readme-bot +* feuillemorte +* joshm91 +* mike + + +Happy testing, +The pytest Development Team diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/example/reportingdemo.rst new/pytest-3.4.2/doc/en/example/reportingdemo.rst --- old/pytest-3.4.1/doc/en/example/reportingdemo.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/example/reportingdemo.rst 2018-03-05 23:35:06.000000000 +0100 @@ -358,7 +358,7 @@ > int(s) E ValueError: invalid literal for int() with base 10: 'qwe' - <0-codegen $PYTHON_PREFIX/lib/python3.5/site-packages/_pytest/python_api.py:583>:1: ValueError + <0-codegen $PYTHON_PREFIX/lib/python3.5/site-packages/_pytest/python_api.py:595>:1: ValueError ______________________ TestRaises.test_raises_doesnt _______________________ self = <failure_demo.TestRaises object at 0xdeadbeef> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/fixture.rst new/pytest-3.4.2/doc/en/fixture.rst --- old/pytest-3.4.1/doc/en/fixture.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/fixture.rst 2018-03-05 23:35:06.000000000 +0100 @@ -369,7 +369,7 @@ Fixtures can introspect the requesting test context ------------------------------------------------------------- -Fixture function can accept the :py:class:`request <FixtureRequest>` object +Fixture functions can accept the :py:class:`request <FixtureRequest>` object to introspect the "requesting" test function, class or module context. Further extending the previous ``smtp`` fixture example, let's read an optional server URL from the test module which uses our fixture:: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/getting-started.rst new/pytest-3.4.2/doc/en/getting-started.rst --- old/pytest-3.4.1/doc/en/getting-started.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/getting-started.rst 2018-03-05 23:35:06.000000000 +0100 @@ -160,9 +160,9 @@ PYTEST_TMPDIR/test_needsfiles0 1 failed in 0.12 seconds -More info on tmpdir handling is available at `Temporary directories and files <tmpdir handling>`_. +More info on tmpdir handling is available at :ref:`Temporary directories and files <tmpdir handling>`. -Find out what kind of builtin ```pytest`` fixtures <fixtures>`_ exist with the command:: +Find out what kind of builtin :ref:`pytest fixtures <fixtures>` exist with the command:: pytest --fixtures # shows builtin and custom fixtures diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/plugins.rst new/pytest-3.4.2/doc/en/plugins.rst --- old/pytest-3.4.1/doc/en/plugins.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/plugins.rst 2018-03-05 23:35:06.000000000 +0100 @@ -148,6 +148,7 @@ _pytest.resultlog _pytest.runner _pytest.main + _pytest.logging _pytest.skipping _pytest.terminal _pytest.tmpdir diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/doc/en/writing_plugins.rst new/pytest-3.4.2/doc/en/writing_plugins.rst --- old/pytest-3.4.1/doc/en/writing_plugins.rst 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/doc/en/writing_plugins.rst 2018-03-05 23:35:06.000000000 +0100 @@ -278,7 +278,7 @@ .. sourcecode:: python - plugin = config.pluginmanager.getplugin("name_of_plugin") + plugin = config.pluginmanager.get_plugin("name_of_plugin") If you want to look at the names of existing plugins, use the ``--trace-config`` option. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/pytest.egg-info/PKG-INFO new/pytest-3.4.2/pytest.egg-info/PKG-INFO --- old/pytest-3.4.1/pytest.egg-info/PKG-INFO 2018-02-20 22:05:05.000000000 +0100 +++ new/pytest-3.4.2/pytest.egg-info/PKG-INFO 2018-03-05 23:35:33.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: pytest -Version: 3.4.1 +Version: 3.4.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 @@ -32,6 +32,9 @@ .. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true :target: https://ci.appveyor.com/project/pytestbot/pytest + .. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg + :target: https://www.codetriage.com/pytest-dev/pytest + The ``pytest`` framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/pytest.egg-info/SOURCES.txt new/pytest-3.4.2/pytest.egg-info/SOURCES.txt --- old/pytest-3.4.1/pytest.egg-info/SOURCES.txt 2018-02-20 22:05:05.000000000 +0100 +++ new/pytest-3.4.2/pytest.egg-info/SOURCES.txt 2018-03-05 23:35:33.000000000 +0100 @@ -65,17 +65,6 @@ bench/empty.py bench/manyparam.py bench/skip.py -changelog/1810.bugfix.rst -changelog/3052.bugfix -changelog/3060.trivial.rst -changelog/3161.bugfix.rst -changelog/3166.trivial.rst -changelog/3184.bugfix -changelog/3202.doc.rst -changelog/3206.bugfix.rst -changelog/3222.bugfix -changelog/985.bugfix -changelog/985.trivial.rst changelog/README.rst changelog/_template.rst doc/en/Makefile @@ -205,6 +194,7 @@ doc/en/announce/release-3.3.2.rst doc/en/announce/release-3.4.0.rst doc/en/announce/release-3.4.1.rst +doc/en/announce/release-3.4.2.rst doc/en/announce/sprint2016.rst doc/en/example/attic.rst doc/en/example/conftest.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/testing/python/approx.py new/pytest-3.4.2/testing/python/approx.py --- old/pytest-3.4.1/testing/python/approx.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/testing/python/approx.py 2018-03-05 23:35:06.000000000 +0100 @@ -249,6 +249,7 @@ (Decimal('-1.000001'), Decimal('-1.0')), ] for a, x in within_1e6: + assert a == approx(x) assert a == approx(x, rel=Decimal('5e-6'), abs=0) assert a != approx(x, rel=Decimal('5e-7'), abs=0) assert approx(x, rel=Decimal('5e-6'), abs=0) == a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/testing/python/fixture.py new/pytest-3.4.2/testing/python/fixture.py --- old/pytest-3.4.1/testing/python/fixture.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/testing/python/fixture.py 2018-03-05 23:35:06.000000000 +0100 @@ -519,6 +519,41 @@ assert len(arg2fixturedefs) == 1 assert arg2fixturedefs['something'][0].argname == "something" + def test_request_garbage(self, testdir): + testdir.makepyfile(""" + import sys + import pytest + import gc + + @pytest.fixture(autouse=True) + def something(request): + # this method of test doesn't work on pypy + if hasattr(sys, "pypy_version_info"): + yield + else: + original = gc.get_debug() + gc.set_debug(gc.DEBUG_SAVEALL) + gc.collect() + + yield + + gc.collect() + leaked_types = sum(1 for _ in gc.garbage + if 'PseudoFixtureDef' in str(_)) + + gc.garbage[:] = [] + + try: + assert leaked_types == 0 + finally: + gc.set_debug(original) + + def test_func(): + pass + """) + reprec = testdir.inline_run() + reprec.assertoutcome(passed=1) + def test_getfixturevalue_recursive(self, testdir): testdir.makeconftest(""" import pytest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/testing/test_config.py new/pytest-3.4.2/testing/test_config.py --- old/pytest-3.4.1/testing/test_config.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/testing/test_config.py 2018-03-05 23:35:06.000000000 +0100 @@ -110,6 +110,13 @@ config = testdir.parseconfig("-c", "custom.cfg") assert config.getini("custom") == "1" + testdir.makefile(".cfg", custom_tool_pytest_section=""" + [tool:pytest] + custom = 1 + """) + config = testdir.parseconfig("-c", "custom_tool_pytest_section.cfg") + assert config.getini("custom") == "1" + def test_absolute_win32_path(self, testdir): temp_cfg_file = testdir.makefile(".cfg", custom=""" [pytest] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-3.4.1/testing/test_terminal.py new/pytest-3.4.2/testing/test_terminal.py --- old/pytest-3.4.1/testing/test_terminal.py 2018-02-20 22:04:39.000000000 +0100 +++ new/pytest-3.4.2/testing/test_terminal.py 2018-03-05 23:35:06.000000000 +0100 @@ -1046,6 +1046,9 @@ r'test_foobar.py \.{5}', ]) + output = testdir.runpytest('--capture=no') + assert "%]" not in output.stdout.str() + class TestProgressWithTeardown(object): """Ensure we show the correct percentages for tests that fail during teardown (#3088)"""