./devel/py-test, Python testing tool

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.3.2, Package name: py27-test-3.3.2, Maintainer: pkgsrc-users

The ``py.test`` testing tool makes it easy to write small tests, yet
scales to support complex functional testing. It provides
- auto-discovery of test modules and functions,
- detailed info on failing `assert statements
(no need to remember ``self.assert*`` names)
- modular fixtures for managing small or parametrized long-lived
test resources.
- multi-paradigm support: you can use ``py.test`` to run test suites based
on unittest (or trial), nose
- single-source compatibility to Python2.4 all the way up to Python3.3,
PyPy-1.9 and Jython-2.5.1.


Required to run:
[textproc/py-expat] [devel/py-setuptools] [lang/python27] [devel/py-py] [lang/py-six] [devel/py-pluggy] [devel/py-funcsigs] [devel/py-attrs]

Required to build:
[textproc/py-yaml] [pkgtools/cwrappers] [devel/py-setuptools_scm] [devel/py-hypothesis]

Master sites:

SHA1: 84205e6e61ee1e80ce50dc6e15134ec8ff9eae37
RMD160: 7c00efa071fe254e68f030f5def0991369e0ee1b
Filesize: 781.343 KB

Version history: (Expand)


CVS history: (Expand)


   2018-01-05 16:28:37 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-test: updated to 3.3.2

Pytest 3.3.2:

Bug Fixes
- pytester: ignore files used to obtain current user metadata in the fd leak
  detector.
- Fix **memory leak** where objects returned by fixtures were never destructed
  by the garbage collector.
- Fix conversion of pyargs to filename to not convert symlinks and not use
  deprecated features on Python 3.
- PYTEST_DONT_REWRITE is now checked for plugins too rather than only for
  test modules.

Improved Documentation
- Add clarifying note about behavior of multiple parametrized arguments

Trivial/Internal Changes
- Code cleanup.
- Clean up code by replacing imports and references of _ast to ast.
   2017-12-06 12:49:14 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-test: updated to 3.3.1

Pytest 3.3.1:

Bug Fixes
* Fix issue about -p no:<plugin> having no effect.
* Fix regression with warnings that contained non-strings in their arguments in \ 
Python 2.
* Always escape null bytes when setting PYTEST_CURRENT_TEST.
* Fix ZeroDivisionError when using the testmon plugin when no tests were \ 
actually collected.
* Bring back TerminalReporter.writer as an alias to TerminalReporter._tw. This \ 
alias was removed by accident in the 3.3.0 release.
* The pytest-capturelog plugin is now also blacklisted, avoiding errors when \ 
running pytest with it still installed.

Improved Documentation
* Fix broken link to plugin pytest-localserver.
   2017-11-28 10:04:56 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-test: updated to 3.3.0

Pytest 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.
Remove internal _preloadplugins() function. This removal is part of the \ 
pytest_namespace() hook deprecation.
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.
Remove ParameterSet.deprecated_arg_dict - its not a public api and the lack of \ 
the underscore was a naming error.
Remove the internal multi-typed attribute Node._evalskip and replace it with the \ 
boolean Node._skipped_by_mark.

Features
--------
pytest_fixture_post_finalizer hook can now receive a request argument.
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.
Report tests with global pytestmark variable only once.
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.
Match warns signature to raises by adding match keyword.
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.
Add allow_module_level kwarg to pytest.skip(), enabling to skip the whole module.
Allow setting file_or_dir, -c, and -o in PYTEST_ADDOPTS.
Return stdout/stderr capture results as a namedtuple, so out and ``err`` can be \ 
accessed by attribute.
Add capfdbinary, a version of capfd which returns bytes from readouterr().
Add capsysbinary a version of capsys which returns bytes from readouterr().
Implement feature to skip setup.py files when run with --doctest-modules.
   2017-11-15 15:14:49 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-test: updated to 3.2.5

Pytest 3.2.5:

Bug Fixes
Remove py<1.5 restriction from pytest as this can cause version conflicts in \ 
some installations.
   2017-11-15 08:43:41 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-test: updated to 3.2.4

Pytest 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.
* Fix issue with @pytest.parametrize if argnames was specified as keyword arguments.
* Strip whitespace from marker names when reading them from INI config.
* Show full context of doctest source in the pytest output, if the line number \ 
of failed example in the docstring is < 9
   2017-10-05 08:54:09 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-test: update to 3.2.3

Pytest 3.2.3
Bug Fixes
* Fix crash in tab completion when no prefix is given.
* The equality checking function (__eq__) of MarkDecorator returns False if one \ 
object is not an instance of MarkDecorator.
* When running pytest --fixtures-per-test: don’t crash if an item has no \ 
_fixtureinfo attribute (e.g. doctests)

Improved Documentation
* In help text of -k option, add example of using not to not select certain \ 
tests whose names match the provided expression.
* Add note in parametrize.rst about calling metafunc.parametrize multiple times.

Trivial/Internal Changes
* Set xfail_strict=True in pytest’s own test suite to catch expected failures \ 
as soon as they start to pass.
* Fix typo in example of passing a callable to markers (in example/markers.rst)
   2017-09-08 13:05:52 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Pytest 3.2.2:

Bug Fixes
* Calling the deprecated request.getfuncargvalue() now shows the source of the call.
* Allow tests declared as @staticmethod to use fixtures.
* Fixed edge-case during collection: attributes which raised pytest.fail when \ 
accessed would abort the entire collection.
* Fix ReprFuncArgs with mixed unicode and UTF-8 args.

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__
* 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.

Trivial/Internal Changes
* Fixed minor error in ‘Good Practices/Manual Integration’ code snippet.
* Fixed typo in goodpractices.rst.
* Improve user guidance regarding --resultlog deprecation.
   2017-08-13 11:48:54 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Pytest 3.2.1
Bug Fixes:
* Fixed small terminal glitch when collecting a single test item.
* Correctly consider / as the file separator to automatically mark plugin files \ 
for rewrite on Windows.
* Properly escape test names when setting PYTEST_CURRENT_TEST environment variable.
* 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.

Improved Documentation
* Explicitly document which pytest features work with unittest.