[tox]
envlist = py34,py35,py36,pep8
skip_missing_interpreters=True

[pep8]
max-line-length = 128

[flake8]
#[H101] Include your name with TODOs as in # TODO(yourname). This makes it easier to find out who the author of the comment was.
#[H302] Do not import objects, only modules DEPRICATED
#[H404] Multi line docstrings should start without a leading new line.
# H405 multi line docstring summary not separated with an empty line
# [H301] Do not import more than one module per line (*)
# [H306] Alphabetically order your imports by the full module path.
# H904 Wrap long lines in parentheses instead of a backslash
ignore = H405,H404,H302,H306,H301,H101,H801,E402
#show-source = True
exclude = **/.env,.venv,.git,.tox,dist,doc,**egg,src/inmanta/parser/parsetab.py,src/inmanta/parser/plyInmantaParser.py,tests/data/**
max-line-length=128

[testenv:py34]
basepython=python3.4

[testenv:py35]
basepython=python3.5

[testenv:py36]
basepython=python3.6

[testenv]
deps=
    pytest
    pytest-tornado
    pytest-cover
    pytest-randomly
    mongobox
    pymongo
    motor
install_command=pip install -c requirements.txt {opts} {packages}
commands=py.test --cov=inmanta --junitxml=junit-{envname}.xml -vvv tests/
passenv=SSH_AUTH_SOCK ASYNC_TEST_TIMEOUT

[testenv:pep8]
deps=
    hacking
    pep8-naming
commands = flake8 src tests
basepython = python3

[testenv:docs]
basepython=python3
changedir=docs
deps=pytest
    -rrequirements.txt
commands=py.test -v check_sphinx.py
