[tox]
minversion      = 1.4
envlist         = py34, py35, py36

[pycodestyle]
max-line-length = 100
# W605 ignored because pycodestyle gets confused by a regex string
# in AVRuleTest test_103_statement_two_perms_cond
ignore          = W605

[testenv:pep8]
deps            = pycodestyle
                  cython>=0.27
commands        = pycodestyle --version
                  pycodestyle setools/ setoolsgui/ tests/ seinfo seinfoflow sedta sesearch sediff --statistics

[testenv:coverage]
setenv          = SETOOLS_COVERAGE = 1
deps            = networkx==2.0
                  coverage>=4.0
                  cython>=0.27
commands        = coverage --version
                  coverage erase
                  coverage run setup.py test -q
                  coverage report

[testenv:lint]
deps            = pylint
                  networkx==2.0
                  cython>=0.27
commands        = {envpython} setup.py build_ext -i
                  pylint --version
                  pylint -E --rcfile .pylintrc setools tests seinfo seinfoflow sedta sesearch sediff
                  # pylint can't see all members introduced by PyQt uic
                  pylint -E --rcfile .pylintrc --disable=no-member,import-error setoolsgui

[testenv]
passenv         = USERSPACE_SRC
deps            = networkx==2.0
                  cython>=0.27
commands        = {envpython} setup.py test
recreate        = True
