summaryrefslogtreecommitdiffstats
path: root/tox.ini
diff options
context:
space:
mode:
authorCalum Lind <calumlind@gmail.com>2018-10-03 16:12:29 +0100
committerCalum Lind <calumlind@gmail.com>2018-10-05 13:23:45 +0100
commit6973f96f8cd5b51bccc094fef745803a4adcba99 (patch)
tree2ee02a14ad6b68fd3cea2aa715ba617ebc040c7d /tox.ini
parent0548bdb65540b780850b9a0138eb6da7d668a052 (diff)
downloaddeluge-6973f96f8cd5b51bccc094fef745803a4adcba99.tar.gz
deluge-6973f96f8cd5b51bccc094fef745803a4adcba99.tar.bz2
deluge-6973f96f8cd5b51bccc094fef745803a4adcba99.zip
[Tests] Update tox and CI configs
- Add new requirements files to make it easier to install deps. - Tox changes - Update tox to use new requirements files. - Tweak heading styles. - Add development environment command `devenv`. - Remove testenv command as it would run on devenv creation. - Travis changes - Now uses xenial as trusty is very old now. - Trial run disabled to speed up tests. - Add tox-venv for Python 3 support. - Only install testssl if running security tests. - Appveyor - Add tox-venv for Python 3 support. - Use requirements file for non-tox. - Remove trial run to speed up testing.
Diffstat (limited to 'tox.ini')
-rw-r--r--tox.ini55
1 files changed, 30 insertions, 25 deletions
diff --git a/tox.ini b/tox.ini
index 936bb530d..fc008dfce 100644
--- a/tox.ini
+++ b/tox.ini
@@ -7,33 +7,28 @@
envlist = py27, flake8, docs
minversion=2.0
+[base]
+deps = -rrequirements.txt
+
[testenv]
install_command = pip install --ignore-installed {opts} {packages}
passenv = DISPLAY PYTHONPATH
setenv = PYTHONPATH = {toxinidir}
sitepackages = True
deps =
- twisted[tls]
- service_identity
- mako
- chardet
- pyopenssl
- pyxdg
- pytest
- pytest-twisted
- mock
+ {[base]deps}
+ -rrequirements-tests.txt
slimit
- pillow
-whitelist_externals = pytest bash
-commands = {envpython} setup.py test
+whitelist_externals = pytest
[pytest]
# Hide logged warnings and errors in test output.
log_cli_level = CRITICAL
-##############
+
+# ==========
# Unit tests
-##############
+# ==========
[testenv:pydef]
commands =
@@ -72,7 +67,6 @@ commands =
[testenv:py27]
deps =
{[testenv]deps}
- py2-ipaddress
basepython = python2.7
commands = {[testenv:pydef]commands}
@@ -80,12 +74,14 @@ commands = {[testenv:pydef]commands}
basepython = python3
commands = {[testenv:pydef]commands}
-###########################
-# Code style verification
-###########################
+
+# =======================
+# Code linting
+# =======================
[testenv:flake8]
-# Disable site packages to avoid using system flake8 which uses hardcoded python path which imports the wrong libraries.
+# Disable site packages to avoid using system flake8 which uses
+# hardcoded python path which imports the wrong libraries.
sitepackages = False
deps =
{[testenv]deps}
@@ -121,9 +117,9 @@ commands =
python -m pylint deluge/plugins/*/deluge/
-######################
-# Unit Test coverage
-######################
+# =============
+# Test coverage
+# =============
[testcoveragebase]
deps =
@@ -152,9 +148,9 @@ commands =
coverage html -d docs/build/htmlcoverage
-######################
-# Docs generation
-######################
+# ===================
+# Documentation build
+# ===================
# We do not have all dependencies on RTD and travis so we exclude the
# site packages (sitepackages=False) when building docs so that local
@@ -188,3 +184,12 @@ commands =
mkdir -p build/doccoverage
sphinx-build -W -b coverage -d build/doctrees source build/doccoverage
pytest --doctest-glob='*.rst'
+
+
+# ========================
+# Developement Environment
+# ========================
+[testenv:devenv]
+envdir = .venv
+usedevelop = True
+deps = -rrequirements-dev.txt