[tox]
envlist=
    coveralls, pylint, flake8, pydocstyle, py26, py27, py33, py34, py35, py36, pypy, pypy3

[testenv]
deps=
    unittest2
commands=
    unit2 discover tests/unit

[testenv:coveralls]
passenv=TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH DEPENDENCY_INJECTOR_DEBUG_MODE
basepython=python2.7
usedevelop=True
deps=
    {[testenv]deps}
    cython
    coverage
    coveralls
commands=
    coverage erase
    coverage run --rcfile=./.coveragerc -m unittest2 discover tests/unit
    coverage report --rcfile=./.coveragerc
    coveralls

[testenv:pylint]
deps=
    pylint
commands=
    - pylint -f colorized --rcfile=./.pylintrc src/dependency_injector

[testenv:flake8]
deps=
    flake8
commands=
    flake8 --max-complexity=10 src/dependency_injector/
    flake8 --max-complexity=10 examples/

[testenv:pydocstyle]
deps=
    pydocstyle
commands=
    pydocstyle src/dependency_injector/
    pydocstyle examples/