X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=tox.ini;h=4d647624818990d3e169131ea6267c40e4fa286b;hp=4685666646311aba23248ebf5e2647977d334e0b;hb=3ea7d6cc2568563e2776be6b24aeeba1274ce9cd;hpb=8ca38ed92090ce6cbd1f8e1cdb802b259d31e9d5 diff --git a/tox.ini b/tox.ini index 4685666..4d64762 100644 --- a/tox.ini +++ b/tox.ini @@ -12,66 +12,66 @@ # See the License for the specific language governing permissions and # limitations under the License. -# 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 +envlist = cover, flake8, pylint, pylint-tests 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 - VCA_CACERT - # These are needed so executing `charm build` succeeds - TERM - TERMINFO +[testenv:cover] +basepython = python3 +deps = + nose2 + -rrequirements.txt + -rtest-requirements.txt +commands = + coverage erase + nose2 -C --coverage n2vc --plugin nose2.plugins.junitxml -s n2vc + coverage report --omit='*n2vc/tests*' + coverage html -d ./cover --omit='*n2vc/tests*' + coverage xml -o coverage.xml --omit='*n2vc/tests*' + +[testenv:pylint] +basepython = python3 deps = - mock - pyyaml - pytest - pytest-asyncio - pytest-xdist - pytest-assume - paramiko - pylxd + pylint==2.6.0 + -rrequirements.txt +commands = + pylint -E n2vc --ignore=tests -[testenv:py3] -# default tox env, excludes integration and serial tests +[testenv:pylint-tests] +basepython = python3 +deps = + pylint==2.6.0 + -rrequirements.txt + -rtest-requirements.txt commands = - pytest --ignore modules/ --ignore tests/charms/ --tb native -ra -v -n auto -k 'not integration' -m 'not serial' {posargs} + pylint -E n2vc.tests -[testenv:lint] -envdir = {toxworkdir}/py3 +[testenv:black] +basepython = python3 +deps = + black commands = - flake8 --ignore E501,E402 --exclude tests/charms/builds,tests/charms/deps {posargs} n2vc tests + black --check --diff n2vc + +[testenv:flake8] +basepython = python3 deps = - flake8 + flake8 + -rrequirements.txt +commands = + flake8 n2vc -[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} +[flake8] +# W503 is invalid PEP-8 +max-line-length = 100 +show-source = True +ignore = W503,E203 +exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,devops_stages/*,.rst [testenv:build] deps = - stdeb - setuptools-version-command + stdeb + setuptools-version-command commands = python3 setup.py --command-packages=stdeb.command bdist_deb