[tox]
envlist = reset,py{27,27-portable,36,38,39},stats
skip_missing_interpreters = true

[testenv]
setenv =
    BITMESSAGE_HOME = {envtmpdir}
    PYTHONWARNINGS = default
deps = -rrequirements.txt
commands =
    python checkdeps.py
    coverage run -a src/bitmessagemain.py -t
    coverage run -a -m tests

[testenv:py27-doc]
deps =
    .[docs]
    -r docs/requirements.txt
commands = python setup.py build_sphinx

[testenv:py27-portable]
skip_install = true
commands = python pybitmessage/bitmessagemain.py -t

[testenv:reset]
deps = coverage
commands = coverage erase

[testenv:stats]
deps = coverage
commands =
    coverage report
    coverage xml

[coverage:run]
source = src
omit =
    */lib*
    tests.py
    */tests/*
    src/version.py
    */__init__.py
    src/fallback/umsgpack/*

[coverage:report]
ignore_errors = true