finish pytest-2.7.2 release
This commit is contained in:
parent
53021ea264
commit
e84c00efae
|
@ -0,0 +1,58 @@
|
||||||
|
pytest-2.7.2: bug fixes
|
||||||
|
=======================
|
||||||
|
|
||||||
|
pytest is a mature Python testing tool with more than a 1100 tests
|
||||||
|
against itself, passing on many different interpreters and platforms.
|
||||||
|
This release is supposed to be drop-in compatible to 2.7.1.
|
||||||
|
|
||||||
|
See below for the changes and see docs at:
|
||||||
|
|
||||||
|
http://pytest.org
|
||||||
|
|
||||||
|
As usual, you can upgrade from pypi via::
|
||||||
|
|
||||||
|
pip install -U pytest
|
||||||
|
|
||||||
|
Thanks to all who contributed to this release, among them:
|
||||||
|
|
||||||
|
Bruno Oliveira
|
||||||
|
Floris Bruynooghe
|
||||||
|
Punyashloka Biswal
|
||||||
|
Aron Curzon
|
||||||
|
Benjamin Peterson
|
||||||
|
Thomas De Schampheleire
|
||||||
|
Edison Gustavo Muenz
|
||||||
|
Holger Krekel
|
||||||
|
|
||||||
|
Happy testing,
|
||||||
|
The py.test Development Team
|
||||||
|
|
||||||
|
|
||||||
|
2.7.2 (compared to 2.7.1)
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
|
- fix issue767: pytest.raises value attribute does not contain the exception
|
||||||
|
instance on Python 2.6. Thanks Eric Siegerman for providing the test
|
||||||
|
case and Bruno Oliveira for PR.
|
||||||
|
|
||||||
|
- Automatically create directory for junitxml and results log.
|
||||||
|
Thanks Aron Curzon.
|
||||||
|
|
||||||
|
- fix issue713: JUnit XML reports for doctest failures.
|
||||||
|
Thanks Punyashloka Biswal.
|
||||||
|
|
||||||
|
- fix issue735: assertion failures on debug versions of Python 3.4+
|
||||||
|
Thanks Benjamin Peterson.
|
||||||
|
|
||||||
|
- fix issue114: skipif marker reports to internal skipping plugin;
|
||||||
|
Thanks Floris Bruynooghe for reporting and Bruno Oliveira for the PR.
|
||||||
|
|
||||||
|
- fix issue748: unittest.SkipTest reports to internal pytest unittest plugin.
|
||||||
|
Thanks Thomas De Schampheleire for reporting and Bruno Oliveira for the PR.
|
||||||
|
|
||||||
|
- fix issue718: failed to create representation of sets containing unsortable
|
||||||
|
elements in python 2. Thanks Edison Gustavo Muenz
|
||||||
|
|
||||||
|
- fix issue756, fix issue752 (and similar issues): depend on py-1.4.29
|
||||||
|
which has a refined algorithm for traceback generation.
|
||||||
|
|
|
@ -3,17 +3,19 @@ import sys
|
||||||
|
|
||||||
pytest_plugins = "pytester",
|
pytest_plugins = "pytester",
|
||||||
|
|
||||||
import os, py
|
import os, py, gc
|
||||||
|
|
||||||
class LsofFdLeakChecker(object):
|
class LsofFdLeakChecker(object):
|
||||||
def get_open_files(self):
|
def get_open_files(self):
|
||||||
|
gc.collect()
|
||||||
out = self._exec_lsof()
|
out = self._exec_lsof()
|
||||||
open_files = self._parse_lsof_output(out)
|
open_files = self._parse_lsof_output(out)
|
||||||
return open_files
|
return open_files
|
||||||
|
|
||||||
def _exec_lsof(self):
|
def _exec_lsof(self):
|
||||||
pid = os.getpid()
|
pid = os.getpid()
|
||||||
return py.process.cmdexec("lsof -Ffn0 -p %d" % pid)
|
#return py.process.cmdexec("lsof -Ffn0 -p %d" % pid)
|
||||||
|
return py.process.cmdexec("lsof -p %d" % pid)
|
||||||
|
|
||||||
def _parse_lsof_output(self, out):
|
def _parse_lsof_output(self, out):
|
||||||
def isopen(line):
|
def isopen(line):
|
||||||
|
|
71
tox.ini
71
tox.ini
|
@ -1,84 +1,71 @@
|
||||||
[tox]
|
[tox]
|
||||||
|
minversion=2.0
|
||||||
distshare={homedir}/.tox/distshare
|
distshare={homedir}/.tox/distshare
|
||||||
envlist=flakes,py26,py27,py34,pypy,py27-pexpect,py33-pexpect,py27-nobyte,py33,py27-xdist,py33-xdist,py27-trial,py33-trial,doctesting,py27-cxfreeze
|
envlist=
|
||||||
|
flakes,py26,py27,py33,py34,pypy,
|
||||||
|
{py27,py34}-{pexpect,xdist,trial},
|
||||||
|
py27-nobyte,doctesting,py27-cxfreeze
|
||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
changedir=testing
|
commands= py.test --lsof -rfsxX {posargs:testing}
|
||||||
commands= py.test --lsof -rfsxX --junitxml={envlogdir}/junit-{envname}.xml []
|
|
||||||
deps=
|
deps=
|
||||||
nose
|
nose
|
||||||
mock
|
mock
|
||||||
|
|
||||||
[testenv:genscript]
|
[testenv:genscript]
|
||||||
changedir=.
|
|
||||||
commands= py.test --genscript=pytest1
|
commands= py.test --genscript=pytest1
|
||||||
|
|
||||||
[testenv:flakes]
|
[testenv:flakes]
|
||||||
changedir=
|
|
||||||
deps = pytest-flakes>=0.2
|
deps = pytest-flakes>=0.2
|
||||||
commands = py.test --flakes -m flakes _pytest testing
|
commands = py.test --flakes -m flakes _pytest testing
|
||||||
|
|
||||||
[testenv:py27-xdist]
|
[testenv:py27-xdist]
|
||||||
changedir=.
|
|
||||||
basepython=python2.7
|
|
||||||
deps=pytest-xdist
|
deps=pytest-xdist
|
||||||
mock
|
mock
|
||||||
nose
|
nose
|
||||||
commands=
|
commands=
|
||||||
py.test -n1 -rfsxX \
|
py.test -n1 -rfsxX {posargs:testing}
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml {posargs:testing}
|
|
||||||
|
|
||||||
[testenv:py33-xdist]
|
[testenv:py34-xdist]
|
||||||
changedir=.
|
|
||||||
basepython=python3.3
|
|
||||||
deps={[testenv:py27-xdist]deps}
|
deps={[testenv:py27-xdist]deps}
|
||||||
commands=
|
commands=
|
||||||
py.test -n3 -rfsxX \
|
py.test -n3 -rfsxX testing
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml testing
|
|
||||||
|
|
||||||
[testenv:py27-pexpect]
|
[testenv:py27-pexpect]
|
||||||
changedir=testing
|
changedir=testing
|
||||||
basepython=python2.7
|
platform=linux|darwin
|
||||||
deps=pexpect
|
deps=pexpect
|
||||||
commands=
|
commands=
|
||||||
py.test -rfsxX test_pdb.py test_terminal.py test_unittest.py
|
py.test -rfsxX test_pdb.py test_terminal.py test_unittest.py
|
||||||
|
|
||||||
[testenv:py33-pexpect]
|
[testenv:py34-pexpect]
|
||||||
changedir=testing
|
changedir=testing
|
||||||
basepython=python3.3
|
platform=linux|darwin
|
||||||
deps={[testenv:py27-pexpect]deps}
|
deps={[testenv:py27-pexpect]deps}
|
||||||
commands=
|
commands=
|
||||||
py.test -rfsxX test_pdb.py test_terminal.py test_unittest.py
|
py.test -rfsxX test_pdb.py test_terminal.py test_unittest.py
|
||||||
|
|
||||||
[testenv:py27-nobyte]
|
[testenv:py27-nobyte]
|
||||||
changedir=.
|
|
||||||
basepython=python2.7
|
|
||||||
deps=pytest-xdist
|
deps=pytest-xdist
|
||||||
distribute=true
|
distribute=true
|
||||||
setenv=
|
setenv=
|
||||||
PYTHONDONTWRITEBYTECODE=1
|
PYTHONDONTWRITEBYTECODE=1
|
||||||
commands=
|
commands=
|
||||||
py.test -n3 -rfsxX \
|
py.test -n3 -rfsxX {posargs:testing}
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml {posargs:testing}
|
|
||||||
|
|
||||||
[testenv:py27-trial]
|
[testenv:py27-trial]
|
||||||
changedir=.
|
|
||||||
basepython=python2.7
|
|
||||||
deps=twisted
|
deps=twisted
|
||||||
commands=
|
commands=
|
||||||
py.test -rsxf \
|
py.test -rsxf {posargs:testing/test_unittest.py}
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml {posargs:testing/test_unittest.py}
|
|
||||||
|
|
||||||
[testenv:py33-trial]
|
[testenv:py34-trial]
|
||||||
changedir=.
|
# py34-trial does not work
|
||||||
basepython=python3.3
|
platform=linux|darwin
|
||||||
deps={[testenv:py27-trial]deps}
|
deps={[testenv:py27-trial]deps}
|
||||||
commands=
|
commands=
|
||||||
py.test -rsxf \
|
py.test -rsxf {posargs:testing/test_unittest.py}
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml {posargs:testing/test_unittest.py}
|
|
||||||
|
|
||||||
[testenv:doctest]
|
[testenv:doctest]
|
||||||
changedir=.
|
|
||||||
commands=py.test --doctest-modules _pytest
|
commands=py.test --doctest-modules _pytest
|
||||||
deps=
|
deps=
|
||||||
|
|
||||||
|
@ -94,13 +81,11 @@ commands=
|
||||||
make html
|
make html
|
||||||
|
|
||||||
[testenv:doctesting]
|
[testenv:doctesting]
|
||||||
basepython=python3.3
|
|
||||||
changedir=doc/en
|
changedir=doc/en
|
||||||
deps=PyYAML
|
deps=PyYAML
|
||||||
commands= py.test -rfsxX --junitxml={envlogdir}/junit-{envname}.xml []
|
commands= py.test -rfsxX {posargs}
|
||||||
|
|
||||||
[testenv:regen]
|
[testenv:regen]
|
||||||
basepython=python3.4
|
|
||||||
changedir=doc/en
|
changedir=doc/en
|
||||||
deps=sphinx
|
deps=sphinx
|
||||||
PyYAML
|
PyYAML
|
||||||
|
@ -109,32 +94,22 @@ commands=
|
||||||
#pip install pytest==2.3.4
|
#pip install pytest==2.3.4
|
||||||
make regen
|
make regen
|
||||||
|
|
||||||
[testenv:py31]
|
|
||||||
deps=nose>=1.0
|
|
||||||
|
|
||||||
[testenv:py31-xdist]
|
|
||||||
deps=pytest-xdist
|
|
||||||
commands=
|
|
||||||
py.test -n3 -rfsxX \
|
|
||||||
--junitxml={envlogdir}/junit-{envname}.xml []
|
|
||||||
|
|
||||||
[testenv:jython]
|
[testenv:jython]
|
||||||
changedir=testing
|
changedir=testing
|
||||||
commands=
|
commands=
|
||||||
{envpython} {envbindir}/py.test-jython \
|
{envpython} {envbindir}/py.test-jython -rfsxX {posargs}
|
||||||
-rfsxX --junitxml={envlogdir}/junit-{envname}2.xml []
|
|
||||||
|
|
||||||
[testenv:py27-cxfreeze]
|
[testenv:py27-cxfreeze]
|
||||||
changedir=testing/cx_freeze
|
changedir=testing/cx_freeze
|
||||||
basepython=python2.7
|
platform=linux|darwin
|
||||||
commands=
|
commands=
|
||||||
{envpython} install_cx_freeze.py
|
{envpython} install_cx_freeze.py
|
||||||
{envpython} runtests_setup.py build --build-exe build
|
{envpython} runtests_setup.py build --build-exe build
|
||||||
{envpython} tox_run.py
|
{envpython} tox_run.py
|
||||||
|
|
||||||
|
|
||||||
[testenv:coveralls]
|
[testenv:coveralls]
|
||||||
changedir=testing
|
changedir=testing
|
||||||
basepython=python3.4
|
|
||||||
deps =
|
deps =
|
||||||
{[testenv]deps}
|
{[testenv]deps}
|
||||||
coveralls
|
coveralls
|
||||||
|
@ -154,4 +129,4 @@ python_files=test_*.py *_test.py testing/*/*.py
|
||||||
python_classes=Test Acceptance
|
python_classes=Test Acceptance
|
||||||
python_functions=test
|
python_functions=test
|
||||||
pep8ignore = E401 E225 E261 E128 E124 E302
|
pep8ignore = E401 E225 E261 E128 E124 E302
|
||||||
norecursedirs = .tox ja .hg
|
norecursedirs = .tox ja .hg cx_freeze_source
|
||||||
|
|
Loading…
Reference in New Issue