92abf4bdf8
Upstream changelog: 1.3.1: Fix encoding issue in Python 3 1.3: Bump version number to 1.3 Simplify example in README Show extra content in report regardless of test result Support extra content in JSON format
131 lines
3.9 KiB
INI
131 lines
3.9 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}
|
|
envdir = {toxinidir}/.venv
|
|
usedevelop = true
|
|
|
|
[testenv:unittests]
|
|
# 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
|
|
passenv = DISPLAY XAUTHORITY HOME
|
|
deps =
|
|
py==1.4.27
|
|
pytest==2.7.1
|
|
pytest-capturelog==0.7
|
|
pytest-qt==1.3.0
|
|
pytest-mock==0.5
|
|
pytest-html==1.3.1
|
|
# We don't use {[testenv:mkvenv]commands} here because that seems to be broken
|
|
# on Ubuntu Trusty.
|
|
commands =
|
|
{envpython} scripts/link_pyqt.py --tox {envdir}
|
|
{envpython} -m py.test --strict {posargs}
|
|
|
|
[testenv:coverage]
|
|
passenv = DISPLAY XAUTHORITY HOME
|
|
deps =
|
|
{[testenv:unittests]deps}
|
|
coverage==3.7.1
|
|
pytest-cov==1.8.1
|
|
cov-core==1.15.0
|
|
commands =
|
|
{[testenv:mkvenv]commands}
|
|
{envpython} -m py.test --strict --cov qutebrowser --cov-report term --cov-report html {posargs}
|
|
|
|
[testenv:misc]
|
|
commands =
|
|
{envpython} scripts/misc_checks.py git
|
|
{envpython} scripts/misc_checks.py vcs qutebrowser scripts tests
|
|
{envpython} scripts/misc_checks.py spelling qutebrowser scripts tests
|
|
|
|
[testenv:pylint]
|
|
skip_install = true
|
|
setenv = PYTHONPATH={toxinidir}/scripts
|
|
deps =
|
|
-r{toxinidir}/requirements.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
|
|
{envpython} scripts/run_pylint_on_tests.py --rcfile=.pylintrc --output-format=colorized --reports=no
|
|
|
|
[testenv:pep257]
|
|
skip_install = true
|
|
deps = pep257==0.5.0
|
|
passenv = LANG
|
|
# 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 tests qutebrowser --ignore=D102,D103,D209,D402 '--match=(?!resources|test_content_disposition).*\.py'
|
|
|
|
[testenv:flake8]
|
|
skip_install = true
|
|
deps =
|
|
-r{toxinidir}/requirements.txt
|
|
pyflakes==0.8.1
|
|
pep8==1.5.7 # rq.filter: <1.6.0
|
|
flake8==2.4.0
|
|
commands =
|
|
{[testenv:mkvenv]commands}
|
|
{envdir}/bin/flake8 scripts tests qutebrowser --config=.flake8
|
|
|
|
[testenv:pyroma]
|
|
skip_install = true
|
|
deps =
|
|
pyroma==1.8.1
|
|
docutils==0.12
|
|
commands =
|
|
{[testenv:mkvenv]commands}
|
|
{envdir}/bin/pyroma .
|
|
|
|
[testenv:check-manifest]
|
|
skip_install = true
|
|
deps =
|
|
check-manifest==0.24
|
|
commands =
|
|
{[testenv:mkvenv]commands}
|
|
{envdir}/bin/check-manifest --ignore 'qutebrowser/git-commit-id,qutebrowser/html/doc,qutebrowser/html/doc/*,*/__pycache__'
|
|
|
|
[testenv:docs]
|
|
skip_install = true
|
|
whitelist_externals = git
|
|
deps =
|
|
-r{toxinidir}/requirements.txt
|
|
commands =
|
|
{[testenv:mkvenv]commands}
|
|
{envpython} scripts/src2asciidoc.py
|
|
git --no-pager diff --exit-code --stat
|
|
{envpython} scripts/asciidoc2html.py {posargs}
|
|
|
|
[testenv:smoke]
|
|
# 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
|
|
passenv = DISPLAY XAUTHORITY HOME USERNAME USER
|
|
deps =
|
|
-r{toxinidir}/requirements.txt
|
|
# We don't use {[testenv:mkvenv]commands} here because that seems to be broken
|
|
# on Ubuntu Trusty.
|
|
commands =
|
|
{envpython} scripts/link_pyqt.py --tox {envdir}
|
|
{envpython} -m qutebrowser --no-err-windows --nowindow --temp-basedir about:blank ":later 500 quit"
|
|
|
|
[pytest]
|
|
norecursedirs = .tox .venv
|
|
markers =
|
|
gui: Tests using the GUI (e.g. spawning widgets)
|