| # Tox (http://tox.testrun.org/) is a tool for running tests |
| # in multiple virtualenvs. This configuration file will run the |
| # test suite on all supported python versions. To use it, "pip install tox" |
| # and then run "tox" from this directory. |
| |
| [tox] |
| envlist = py3,lint,integration |
| skipsdist=True |
| |
| [pytest] |
| markers = |
| serial: mark a test that must run by itself |
| |
| [testenv] |
| basepython=python3 |
| usedevelop=True |
| |
| # for testing with other python versions |
| commands = py.test --ignore modules/ --ignore tests/charms/ --tb native -ra -v -s -n auto -k 'not integration' -m 'not serial' {posargs} |
| passenv = |
| HOME |
| VCA_PATH |
| VCA_HOST |
| VCA_PORT |
| VCA_USER |
| VCA_SECRET |
| LXD_HOST |
| LXD_SECRET |
| # These are needed so executing `charm build` succeeds |
| TERM |
| TERMINFO |
| deps = |
| mock |
| pyyaml |
| pytest |
| pytest-asyncio |
| pytest-xdist |
| pytest-assume |
| paramiko |
| pylxd |
| |
| [testenv:py3] |
| # default tox env, excludes integration and serial tests |
| commands = |
| pytest --ignore modules/ --ignore tests/charms/ --tb native -ra -v -s -n auto -k 'not integration' -m 'not serial' {posargs} |
| |
| [testenv:lint] |
| envdir = {toxworkdir}/py3 |
| commands = |
| flake8 --ignore E501,E402 --exclude tests/charms/builds,tests/charms/deps {posargs} n2vc tests |
| deps = |
| flake8 |
| |
| [testenv:integration] |
| envdir = {toxworkdir}/py3 |
| commands = py.test --ignore modules/ --ignore tests/charms/ --tb native -ra -v -s -n 1 -k 'integration' -m 'serial' {posargs} |
| |
| [testenv:build] |
| deps = |
| stdeb |
| setuptools-version-command |
| commands = python3 setup.py --command-packages=stdeb.command bdist_deb |