summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml4
-rw-r--r--tox.ini70
2 files changed, 56 insertions, 18 deletions
diff --git a/.travis.yml b/.travis.yml
index 74b64d343..42b3073c7 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -10,7 +10,9 @@ env:
- TOXENV=py34
- TOXENV=pypy
- TOXENV=pypy3
- - TOXENV=py26,py32,cover
+ - TOXENV=py2-docs
+ - TOXENV=py3-docs
+ - TOXENV=py2-cover,py3-cover,coverage
install:
- travis_retry pip install tox
diff --git a/tox.ini b/tox.ini
index dae31ddd6..22f21a6a3 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,27 +1,63 @@
[tox]
-skipsdist = True
-envlist =
- py26,py27,py32,py33,py34,pypy,pypy3,cover
+envlist =
+ py26,py27,py32,py33,py34,pypy,pypy3,
+ {py2,py3}-docs
+ {py2,py3}-cover,coverage
[testenv]
-commands =
- {envbindir}/python setup.py dev
- {envbindir}/coverage run --source={toxinidir}/pyramid {envbindir}/nosetests --xunit-file=nosetests-{envname}.xml
- {envbindir}/coverage xml -o coverage-{envname}.xml
+# Most of these are defaults but if you specify any you can't fall back
+# to defaults for others.
+basepython =
+ py26: python2.6
+ py27: python2.7
+ py32: python3.2
+ py33: python3.3
+ py34: python3.4
+ pypy: pypy
+ pypy3: pypy3
+ py2: python2.7
+ py3: python3.4
+
+commands =
+ pip install pyramid[testing]
+ nosetests --with-xunit --xunit-file=nosetests-{envname}.xml {posargs:}
+
+[testenv:py2-cover]
+commands =
+ pip install pyramid[testing]
+ coverage run --source=pyramid {envbindir}/nosetests --with-xunit --xunit-file=nosetests-py2.xml {posargs:}
+ coverage xml -o coverage-py2.xml
+setenv =
+ COVERAGE_FILE=.coverage.py2
+
+[testenv:py3-cover]
+commands =
+ pip install pyramid[testing]
+ coverage run --source=pyramid {envbindir}/nosetests --with-xunit --xunit-file=nosetests-py3.xml {posargs:}
+ coverage xml -o coverage-py3.xml
setenv =
- COVERAGE_FILE=.coverage.{envname}
+ COVERAGE_FILE=.coverage.py3
+
+[testenv:py2-docs]
+whitelist_externals = make
+commands =
+ pip install pyramid[docs]
+ make -C docs html
-[testenv:cover]
+[testenv:py3-docs]
+whitelist_externals = make
+commands =
+ pip install pyramid[docs]
+ make -C docs html
+
+[testenv:coverage]
+basepython = python3.4
commands =
- {envbindir}/coverage erase
- {envbindir}/coverage combine
- {envbindir}/coverage xml
- {envbindir}/coverage report --show-missing --fail-under=100
+ coverage erase
+ coverage combine
+ coverage xml
+ coverage report --show-missing --fail-under=100
deps =
coverage
setenv =
COVERAGE_FILE=.coverage
-
-# 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.