[tox]
envlist = python33,python34,python35,python36

[flake8]
max-line-length = 139
ignore =
    # C901 func is too complex
    C901,
    # E126 continuation line over-indented for hanging indent
    E126,
    # E127 continuation line over-indented for visual indent
    E127,
    # E226 missing whitespace around arithmetic operator
    E226,
    # E231 missing whitespace after ','
    E231,
    # E302 expected 2 blank lines, found 1
    E302,
    # E305 expected 2 blank lines after class or function definition, found 1
    E305,
    # E731 do not assign a lambda expression, use a def
    E731,
    # W292 no newline at end of file
    W292,

[testenv]
commands =
    pip install -e .[tests]
    pip install -r requirements.txt
    python -m flake8
    find . -iname "*.py" | xargs pylint --rcfile tests/.pylintrc
    ;find . -iname "*.py" -and -not -path './.tox/*' -not -path './build/*' | xargs pylint --rcfile tests/.pylintrc
    pytest --cov buku -vv {posargs}
    ;pytest --cov buku -vv -m 'not slowtest and not non_tox'{posargs}