# Tox (https://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]
# deprecation warning: py{26,32,33,34}
envlist = py{26,27,33,34,35,36,37,py,py3}, tf-no-keras, perf, flake8, setup.py

[coverage]
deps =
    nose
    coverage
    coveralls
commands =
    nosetests --with-coverage --cover-package=tqdm --ignore-files="tests_perf\.py" -d -v tqdm/
    - coveralls

[extra]
deps =
    {[coverage]deps}
    nose-timer
    codecov
commands =
    nosetests --with-coverage --with-timer --cover-package=tqdm --ignore-files="tests_perf\.py" -d -v tqdm/
    - coveralls
    codecov

[testenv]
passenv = CI TRAVIS TRAVIS_* TOXENV  CODECOV_*
deps =
    {[extra]deps}
    cython
    numpy
    pandas
    tensorflow
    keras
commands = {[extra]commands}

# no cython/numpy/pandas for py{py,py3,26,33,34}

[testenv:py26]
# no codecov and timer for py26
deps =
    nose
    coverage
    coveralls==1.2.0
    codecov
    pycparser==2.18
    idna==2.7
commands =
    {[coverage]commands}
    codecov

[testenv:pypy]
deps = {[extra]deps}
commands = {[extra]commands}

[testenv:pypy3]
deps = {[extra]deps}
commands = {[extra]commands}

[testenv:py33]
deps = {[extra]deps}
commands = {[extra]commands}

[testenv:py34]
# py34-compatible pandas
deps = {[extra]deps}
commands = {[extra]commands}

[testenv:tf-no-keras]
deps =
    {[extra]deps}
    tensorflow
commands =
    nosetests --with-timer tqdm/tests/tests_keras.py -d -v

[testenv:perf]
deps =
    nose
    nose-timer
commands =
    nosetests --with-timer tqdm/tests/tests_perf.py -d -v

[testenv:flake8]
deps = flake8
commands =
    flake8 -j 8 --count --statistics .

[testenv:setup.py]
deps =
    docutils
    pygments
    py-make>=0.1.0
commands =
    python setup.py check --restructuredtext --metadata --strict
    python setup.py make none