qutebrowser/tox.ini
Florian Bruhin 8a0d89d940 tox: Update Mako to 1.0.4
[test] [feature] The default test runner is now py.test. Running “python
setup.py test” will make use of py.test instead of nose. nose still works as a
test runner as well, however.

[lexer] [bug] Major improvements to lexing of intricate Python sections which
may contain complex backslash sequences, as well as support for the bitwise
operator (e.g. pipe symbol) inside of expression sections distinct from the
Mako “filter” operator, provided the operator is enclosed within parentheses or
brackets. Pull request courtesy Daniel Martin.

[feature] Added new method Template.list_defs(). Pull request courtesy Jonathan
Vanasco.
2016-03-11 06:55:05 +01:00

226 lines
6.0 KiB
INI

# Tox (http://tox.testrun.org/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.
[tox]
envlist = py34,py35-cov,misc,vulture,flake8,pylint,pyroma,check-manifest
[testenv]
# https://bitbucket.org/hpk42/tox/issue/246/ - only needed for Windows though
setenv =
QT_QPA_PLATFORM_PLUGIN_PATH={envdir}/Lib/site-packages/PyQt5/plugins/platforms
PYTEST_QT_API=pyqt5
passenv = PYTHON DISPLAY XAUTHORITY HOME USERNAME USER CI TRAVIS XDG_*
deps =
-r{toxinidir}/requirements.txt
beautifulsoup4==4.4.1
coverage==4.0.3
decorator==4.0.9
Flask==0.10.1
glob2==0.4.1
httpbin==0.4.1
hypothesis==3.1.0
itsdangerous==0.24
Mako==1.0.4
parse==1.6.6
parse-type==0.3.4
py==1.4.31
pytest==2.9.0
pytest-bdd==2.16.0
pytest-catchlog==1.2.2
pytest-cov==2.2.1
pytest-faulthandler==1.3.0
pytest-html==1.8.0
pytest-mock==0.11.0
pytest-qt==1.11.0
pytest-instafail==0.3.0
pytest-travis-fold==1.2.0
pytest-repeat==0.2
pytest-rerunfailures==1.0.1
pytest-xvfb==0.2.0
six==1.10.0
termcolor==1.1.0
vulture==0.8.1
Werkzeug==0.11.4
wheel==0.29.0
cherrypy==5.1.0
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m py.test {posargs:tests}
[testenv:py35-cov]
basepython = python3.5
setenv = {[testenv]setenv}
passenv = {[testenv]passenv}
deps = {[testenv]deps}
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m py.test --cov --cov-report xml --cov-report=html --cov-report= {posargs:tests}
{envpython} scripts/dev/check_coverage.py {posargs}
[testenv:py34-cov]
basepython = python3.4
setenv = {[testenv]setenv}
passenv = {[testenv]passenv}
deps = {[testenv]deps}
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m py.test --cov --cov-report xml --cov-report=html --cov-report= {posargs:tests}
{envpython} scripts/dev/check_coverage.py {posargs}
[testenv:mkvenv]
basepython = python3
commands = {envpython} scripts/link_pyqt.py --tox {envdir}
envdir = {toxinidir}/.venv
usedevelop = true
deps =
-r{toxinidir}/requirements.txt
[testenv:unittests-frozen]
# cx_Freeze doesn't support Python 3.5 yet
basepython = python3.4
passenv = {[testenv]passenv}
skip_install = true
deps =
{[testenv]deps}
cx_Freeze==4.3.4
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} scripts/dev/freeze_tests.py build_exe -b {envdir}/build
{envdir}/build/run-frozen-tests {posargs}
[testenv:unittests-nodisp]
basepython = python3
passenv = {[testenv]passenv}
deps = {[testenv]deps}
setenv =
DISPLAY=
QUTE_NO_DISPLAY=1
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m py.test {posargs:tests}
[testenv:misc]
ignore_errors = true
basepython = python3
# For global .gitignore files
passenv = HOME
deps =
commands =
{envpython} scripts/dev/misc_checks.py git
{envpython} scripts/dev/misc_checks.py vcs
{envpython} scripts/dev/misc_checks.py spelling
[testenv:vulture]
basepython = python3
deps = vulture==0.8.1
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} scripts/dev/run_vulture.py
[testenv:pylint]
basepython = python3
ignore_errors = true
passenv =
deps =
{[testenv]deps}
{[testenv:misc]deps}
astroid==1.4.4
pylint==1.5.4
requests==2.9.1
./scripts/dev/pylint_checkers
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m pylint scripts qutebrowser --output-format=colorized --reports=no {posargs}
{envpython} scripts/dev/run_pylint_on_tests.py {toxinidir} --output-format=colorized --reports=no {posargs}
[testenv:pylint-master]
basepython = python3
passenv = {[testenv:pylint]passenv}
deps =
{[testenv]deps}
{[testenv:misc]deps}
git+https://github.com/PyCQA/astroid.git
git+https://github.com/PyCQA/pylint.git
requests==2.9.1
./scripts/dev/pylint_checkers
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -m pylint scripts qutebrowser --output-format=colorized --reports=no {posargs}
{envpython} scripts/dev/run_pylint_on_tests.py --output-format=colorized --reports=no {posargs}
[testenv:flake8]
basepython = python3
passenv =
deps =
-r{toxinidir}/requirements.txt
flake8==2.5.4
flake8-debugger==1.4.0
pep8-naming==0.3.3
flake8-putty==0.2.0
ebb-lint==0.4.4
flake8-copyright==0.1
mccabe==0.4.0
pep8==1.7.0
pyflakes==1.1.0
flake8-string-format==0.2.1
flake8-deprecated==1.0
flake8-mock==0.2
flake8-pep3101==0.3
flake8-docstrings==0.2.5
pep257==0.7.0 # still needed by flake8-docstrings but ignored
pydocstyle==1.0.0
commands =
{envpython} -m flake8
[testenv:pyroma]
basepython = python3
skip_install = true
passenv =
deps =
pyroma==2.0.2
docutils==0.12
commands =
{envdir}/bin/pyroma .
[testenv:check-manifest]
basepython = python3
skip_install = true
passenv =
deps =
check-manifest==0.31
commands =
{envdir}/bin/check-manifest --ignore 'qutebrowser/git-commit-id,qutebrowser/html/doc,qutebrowser/html/doc/*,*/__pycache__'
[testenv:docs]
basepython = python3
skip_install = true
whitelist_externals = git
passenv =
deps =
-r{toxinidir}/requirements.txt
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} scripts/dev/src2asciidoc.py
git --no-pager diff --exit-code --stat
{envpython} scripts/asciidoc2html.py {posargs}
[testenv:cxfreeze-windows]
# PYTHON is actually required when using this env, but the entire tox.ini would
# fail if we didn't have a fallback defined.
basepython = {env:PYTHON:}/python.exe
skip_install = true
deps =
-r{toxinidir}/requirements.txt
cx_Freeze==4.3.4
commands =
{envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} scripts/dev/freeze.py {posargs}
[testenv:eslint]
skip_install = True
deps =
whitelist_externals = eslint
commands = eslint qutebrowser