update travis/tox to support py35 and coverage on py2+py3
This commit is contained in:
35
.travis.yml
35
.travis.yml
@@ -2,16 +2,28 @@
|
|||||||
language: python
|
language: python
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
env:
|
matrix:
|
||||||
- TOXENV=py26
|
include:
|
||||||
- TOXENV=py27
|
- python: 2.6
|
||||||
- TOXENV=py32
|
env: TOXENV=py26
|
||||||
- TOXENV=py33
|
- python: 2.7
|
||||||
- TOXENV=py34
|
env: TOXENV=py27
|
||||||
- TOXENV=py35
|
- python: 3.2
|
||||||
- TOXENV=pypy
|
env: TOXENV=py32
|
||||||
- TOXENV=pypy3
|
- python: 3.3
|
||||||
- TOXENV=cover
|
env: TOXENV=py33
|
||||||
|
- python: 3.4
|
||||||
|
env: TOXENV=py34
|
||||||
|
- python: 3.5
|
||||||
|
env: TOXENV=py35
|
||||||
|
- python: pypy
|
||||||
|
env: TOXENV=pypy
|
||||||
|
- python: pypy3
|
||||||
|
env: TOXENV=pypy3
|
||||||
|
- python: 3.5
|
||||||
|
env: TOXENV=py2-cover,py3-cover,coverage
|
||||||
|
- python: 3.5
|
||||||
|
env: TOXENV=docs
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- travis_retry pip install tox
|
- travis_retry pip install tox
|
||||||
@@ -22,3 +34,6 @@ script:
|
|||||||
notifications:
|
notifications:
|
||||||
email:
|
email:
|
||||||
- pyramid-checkins@lists.repoze.org
|
- pyramid-checkins@lists.repoze.org
|
||||||
|
irc:
|
||||||
|
channels:
|
||||||
|
- "chat.freenode.net#pyramid"
|
||||||
|
67
tox.ini
67
tox.ini
@@ -1,25 +1,62 @@
|
|||||||
[tox]
|
[tox]
|
||||||
envlist =
|
envlist =
|
||||||
py26,py27,py32,py33,py34,py35,pypy,pypy3,cover,docs
|
py26,py27,py32,py33,py34,py35,pypy,pypy3,
|
||||||
|
docs,
|
||||||
|
{py2,py3}-cover,coverage
|
||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
commands =
|
# Most of these are defaults but if you specify any you can't fall back
|
||||||
python setup.py -q dev
|
# to defaults for others.
|
||||||
python -Wd setup.py -q test -q
|
|
||||||
|
|
||||||
[testenv:cover]
|
|
||||||
basepython =
|
basepython =
|
||||||
python2.7
|
py26: python2.6
|
||||||
|
py27: python2.7
|
||||||
|
py32: python3.2
|
||||||
|
py33: python3.3
|
||||||
|
py34: python3.4
|
||||||
|
py35: python3.5
|
||||||
|
pypy: pypy
|
||||||
|
pypy3: pypy3
|
||||||
|
py2: python2.7
|
||||||
|
py3: python3.5
|
||||||
|
|
||||||
commands =
|
commands =
|
||||||
nosetests --with-xunit --with-xcoverage --cover-min-percentage=100
|
pip install colander[testing]
|
||||||
deps =
|
nosetests --with-xunit --xunit-file=nosetests-{envname}.xml {posargs:}
|
||||||
nose
|
|
||||||
coverage
|
|
||||||
nosexcover
|
|
||||||
|
|
||||||
[testenv:docs]
|
[testenv:docs]
|
||||||
basepython =
|
basepython = python3.5
|
||||||
python2.7
|
whitelist_externals = make
|
||||||
commands =
|
commands =
|
||||||
pip install colander[docs]
|
pip install colander[docs]
|
||||||
sphinx-build -b html -d docs/_build/doctrees docs docs/_build/html
|
make -C docs html epub BUILDDIR={envdir} "SPHINXOPTS=-W -E"
|
||||||
|
|
||||||
|
# we separate coverage into its own testenv because a) "last run wins" wrt
|
||||||
|
# cobertura jenkins reporting and b) pypy and jython can't handle any
|
||||||
|
# combination of versions of coverage and nosexcover that i can find.
|
||||||
|
[testenv:py2-cover]
|
||||||
|
commands =
|
||||||
|
pip install colander[testing]
|
||||||
|
coverage run --source=colander {envbindir}/nosetests
|
||||||
|
coverage xml -o coverage-py2.xml
|
||||||
|
setenv =
|
||||||
|
COVERAGE_FILE=.coverage.py2
|
||||||
|
|
||||||
|
[testenv:py3-cover]
|
||||||
|
commands =
|
||||||
|
pip install colander[testing]
|
||||||
|
coverage run --source=colander {envbindir}/nosetests
|
||||||
|
coverage xml -o coverage-py3.xml
|
||||||
|
setenv =
|
||||||
|
COVERAGE_FILE=.coverage.py3
|
||||||
|
|
||||||
|
[testenv:coverage]
|
||||||
|
basepython = python3.5
|
||||||
|
commands =
|
||||||
|
coverage erase
|
||||||
|
coverage combine
|
||||||
|
coverage xml
|
||||||
|
coverage report --show-missing --fail-under=100
|
||||||
|
deps =
|
||||||
|
coverage
|
||||||
|
setenv =
|
||||||
|
COVERAGE_FILE=.coverage
|
||||||
|
Reference in New Issue
Block a user