Skip to content
Snippets Groups Projects
Forked from Flatland / Flatland
1898 commits behind the upstream repository.
tox.ini 4.00 KiB
[tox]
envlist = py36, py37, examples, notebooks, flake8, docs, coverage

[travis]
python =
    3.7: py37
    3.6: py36

[flake8]
max-line-length = 120
ignore = E121 E126 E123 E128 E133 E226 E241 E242 E704 W291 W293 W391 W503 W504 W505

[testenv:flake8]
basepython = python
passenv = DISPLAY
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
    flake8 flatland tests examples benchmarks

[testenv:docs]
basepython = python
whitelist_externals = make
passenv =
    DISPLAY
    HTTP_PROXY
    HTTPS_PROXY
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
    make docs

[testenv:coverage]
basepython = python
whitelist_externals = make
passenv =
    DISPLAY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
    make coverage

[testenv:benchmarks]
basepython = python
setenv =
    PYTHONPATH = {toxinidir}
passenv =
    DISPLAY
    XAUTHORITY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
whitelist_externals = sh
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
    python benchmarks/benchmark_all_examples.py

[testenv:profiling]
basepython = python
setenv =
    PYTHONPATH = {toxinidir}
passenv =
    DISPLAY
    XAUTHORITY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
whitelist_externals = sh
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
    python benchmarks/profile_all_examples.py

[testenv:examples]
basepython = python
setenv =
    PYTHONPATH = {toxinidir}
passenv =
    DISPLAY
    XAUTHORITY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
whitelist_externals = sh
deps =
    -r{toxinidir}/requirements_dev.txt
commands =
; run examples from subfolder to ensure that resources are accessed via resources and not via relative paths
    sh -c 'mkdir -p {envtmpdir}/c236d3c240d61a0969d4cb59e2180ce5'
    sh -c 'cd {envtmpdir}/c236d3c240d61a0969d4cb59e2180ce5 &&  python {toxinidir}/benchmarks/run_all_examples.py'

[testenv:notebooks]
basepython = python
setenv =
    PYTHONPATH = {toxinidir}
passenv =
    DISPLAY
    XAUTHORITY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
whitelist_externals = sh
deps =
    -r{toxinidir}/requirements_dev.txt
    -r{toxinidir}/requirements_continuous_integration.txt
commands =
; run tests from subfolder to ensure that resources are accessed via resources and not via relative paths
    sh -c 'mkdir -p {envtmpdir}/6f59bc68108c3895b1828abdd04b9a06'
    sh -c 'jupyter nbextension install --py --sys-prefix widgetsnbextension'
    sh -c 'jupyter nbextension enable --py --sys-prefix widgetsnbextension'
    sh -c 'jupyter nbextension install --py --sys-prefix jpy_canvas'
    sh -c 'jupyter nbextension enable --py --sys-prefix jpy_canvas'
; https://stackoverflow.com/questions/35545402/how-to-run-an-ipynb-jupyter-notebook-from-terminal/35545463
    sh -c 'ls notebooks/*.ipynb  | xargs -n 1 jupyter nbconvert --to python'
    sh -c 'cd {envtmpdir}/6f59bc68108c3895b1828abdd04b9a06 && ls {toxinidir}/notebooks/*.py  | xargs -I{} -n 1 sh -c "echo -e \"\n====== Running {} ========\n\"; ipython {}"'

[testenv]
whitelist_externals = sh
                      pip
setenv =
    PYTHONPATH = {toxinidir}
passenv =
    DISPLAY
    XAUTHORITY
; HTTP_PROXY+HTTPS_PROXY required behind corporate proxies
    HTTP_PROXY
    HTTPS_PROXY
deps =
    -r{toxinidir}/requirements_dev.txt
commands =
; run tests from subfolder to ensure that resources are accessed via resources and not via relative paths
    sh -c 'mkdir -p {envtmpdir}/fefed3ba12bf1ed81dbcc20fb52706ea'
    sh -c 'cd {envtmpdir}/fefed3ba12bf1ed81dbcc20fb52706ea && py.test --basetemp={envtmpdir} {toxinidir}'