summaryrefslogtreecommitdiff
path: root/tox.ini
blob: 8de3055e700a1225724a11e4af5124c865c3c0dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# 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 =
    py27, py34, py35, py36, py37, pypy
# Other valid evironments are:
#   docs
#   release

[testenv]
passenv =
    WITH_EXTRAS
deps =
    pipenv
extras =
    {env:WITH_EXTRAS:}
commands =
    pipenv install --dev --skip-lock
    pytest --doctest-modules {envsitepackagesdir}/natsort
    pytest README.rst docs/source/intro.rst docs/source/examples.rst docs/source/howitworks.rst
    pytest --flakes --pep8 --tb=short --cov {envsitepackagesdir}/natsort --cov-report term-missing

[testenv:py27]
commands =
    pipenv install --dev --skip-lock
    pytest --doctest-modules {envsitepackagesdir}/natsort
    pytest README.rst docs/source/intro.rst docs/source/examples.rst
    pytest --flakes --pep8 --tb=short --cov {envsitepackagesdir}/natsort --cov-report term-missing

[testenv:pypy]
commands = {[testenv:py27]commands}

# Build documentation.
[testenv:docs]
deps =
    sphinx
    sphinx_rtd_theme
commands =
    {envpython} setup.py build_sphinx

[testenv:release]
deps =
    twine
    check-manifest
commands =
    check-manifest
    {envpython} setup.py sdist bdist_wheel
    twine upload dist/*