Skip to content
Snippets Groups Projects
tox.ini 3.05 KiB
[tox]
envlist = py{27,35,36,37,38,39}
skip_missing_interpreters = true

[testenv]
extras = tests
commands =
    coverage run --parallel-mode -m pytest {posargs}
    coverage combine
    coverage report -m
    coverage xml

[testenv:short]
deps =
    mock>=2.0.0
    pytest
    pytest-mock
    parameterized
    coverage
    cryptography
    secp256k1
    scrypt
commands =
    coverage run --parallel-mode -m pytest {posargs}
    coverage combine
    coverage report -m
    coverage xml

[testenv:py36]
extras = tests
commands =
    coverage run --parallel-mode -m pytest {posargs}
    coverage combine
    coverage report -m
    coverage xml

[testenv:py36short]
deps =
    mock>=2.0.0
    pytest
    pytest-mock
    parameterized
    coverage
    cryptography
    secp256k1
    scrypt
commands =
    coverage run --parallel-mode -m pytest {posargs}
    coverage combine
    coverage report -m
    coverage xml


[testenv:flake8]
deps=
    flake8
    # flake8-docstrings>=0.2.7
    # flake8-import-order>=0.9
    # pep8-naming
    # flake8-colors
commands=
    flake8 beem beemapi beembase beemgraphenebase beemstorage setup.py examples tests

[testenv:pylint]
deps=
    pyflakes
    pylint
commands=
    pylint beem beemapi beembase beemgraphenebase beemstorage tests
[testenv:doc8]
skip_install = true
deps =
    sphinx
    doc8
commands =
    doc8 docs/

[testenv:mypy]
skip_install = true
deps =
    mypy-lang
commands =
    mypy beem beemapi beembase beemgraphenebase beemstorage


[testenv:bandit]
skip_install = true
deps =
    bandit
commands =
    bandit -r beem beemapi beembase beemgraphenebase -c .bandit.yml

[testenv:linters]
skip_install = true
deps =
    {[testenv:flake8]deps}
    {[testenv:pylint]deps}
    {[testenv:doc8]deps}
    {[testenv:readme]deps}
    {[testenv:bandit]deps}
commands =
    {[testenv:flake8]commands}
    {[testenv:pylint]commands}
    {[testenv:doc8]commands}
    {[testenv:readme]commands}
    {[testenv:bandit]commands}


[testenv:readme]
deps =
    readme_renderer
commands =
    python setup.py check -r -s

[testenv:docs]
basepython=
    python
changedir=
    docs
extras = tests
deps=sphinx
     sphinx-click
commands=
    sphinx-build -b html ./ ./html

[testenv:upload_coverage]
deps =
    coverage
    codacy-coverage
passenv = CODACY_PROJECT_TOKEN
commands =
    python-codacy-coverage -r coverage.xml

# Flake8 Configuration
[flake8]
# Ignore some flake8-docstrings errors
# NOTE(sigmavirus24): While we're still using flake8 2.x, this ignore line
# defaults to selecting all other errors so we do not need select=E,F,W,I,D
# Once Flake8 3.0 is released and in a good state, we can use both and it will
# work well \o/
ignore = D203,E129,E501,F401,E722,E122,E111,E114,D102,D100,D103,D107
exclude =
    .tox,
    .git,
    __pycache__,
    docs/source/conf.py,
    build,
    dist,
    tests/fixtures/*,
    *.pyc,
    *.egg-info,
    .cache,
    .eggs
max-complexity = 10
import-order-style = google
application-import-names = flake8
# format = ${cyan}%(path)s${reset}:${yellow_bold}%(row)d${reset}:${green_bold}%(col)d${reset}: ${red_bold}%(code)s${reset} %(text)s