qutebrowser/tox.ini
Florian Bruhin 738f6a4510 tox: Set QT_QPA_PLATFORM_PLUGIN_PATH for tests.
This is needed on Windows so the qwindows plugin is found.
It makes more sense to set this here instead of setting it in the buildbot
settings.
2015-03-26 13:23:07 +01:00

94 lines
2.6 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 = unittests,misc,pep257,flake8,pylint,pyroma,check-manifest
[testenv]
basepython = python3
[testenv:mkvenv]
commands = {envpython} scripts/link_pyqt.py --tox {envdir} {envsitepackagesdir}
envdir = {toxinidir}/.venv
usedevelop = true
[testenv:unittests]
setenv = QT_QPA_PLATFORM_PLUGIN_PATH={envsitepackagesdir}/PyQt5/plugins/platforms
commands =
{[testenv:mkvenv]commands}
{envpython} -m unittest
[testenv:coverage]
deps =
coverage==3.7.1
commands =
{[testenv:mkvenv]commands}
{envpython} -m coverage erase
{envpython} -m coverage run --branch --source=qutebrowser -m unittest
{envpython} -m coverage html
{envpython} scripts/print_coverage.py
[testenv:misc]
commands =
{envpython} scripts/misc_checks.py git
{envpython} scripts/misc_checks.py vcs qutebrowser scripts
[testenv:pylint]
skip_install = true
setenv = PYTHONPATH={toxinidir}/scripts:{env:PYTHONPATH:}
deps =
-rrequirements.txt
astroid==1.3.6
beautifulsoup4==4.3.2
pylint==1.4.3
logilab-common==0.63.2
six==1.9.0
commands =
{[testenv:mkvenv]commands}
{envdir}/bin/pylint scripts qutebrowser --rcfile=.pylintrc --output-format=colorized --reports=no
[testenv:pep257]
skip_install = true
deps = pep257==0.5.0
# Disabled checks:
# D102: Docstring missing, will be handled by others
# D209: Blank line before closing """ (removed from PEP257)
# D402: First line should not be function's signature (false-positives)
commands = {envpython} -m pep257 scripts qutebrowser --ignore=D102,D209,D402 '--match=(?!resources|test_content_disposition).*\.py'
[testenv:flake8]
deps =
-rrequirements.txt
pyflakes==0.8.1
pep8==1.5.7 # rq.filter: <=1.5.7
flake8==2.4.0
commands =
{[testenv:mkvenv]commands}
{envdir}/bin/flake8 scripts qutebrowser --config=.flake8
[testenv:pyroma]
deps =
pyroma==1.7
docutils==0.12
commands =
{[testenv:mkvenv]commands}
{envdir}/bin/pyroma .
[testenv:check-manifest]
deps =
check-manifest==0.23
commands =
{[testenv:mkvenv]commands}
{envdir}/bin/check-manifest --ignore 'qutebrowser/git-commit-id,qutebrowser/html/doc,qutebrowser/html/doc/*,*/__pycache__'
[testenv:docs]
deps =
-rrequirements.txt
commands =
{[testenv:mkvenv]commands}
{envpython} scripts/src2asciidoc.py
{envpython} scripts/misc_checks.py git
{envpython} scripts/asciidoc2html.py {posargs}