X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=tox.ini;h=4685666646311aba23248ebf5e2647977d334e0b;hp=789bbebdecabf8f09702a6ccac257b36367427ab;hb=refs%2Fchanges%2F76%2F8576%2F1;hpb=dcdf82bbc1ef310379f746518b2dd3b006353cb3 diff --git a/tox.ini b/tox.ini index 789bbeb..4685666 100644 --- a/tox.ini +++ b/tox.ini @@ -1,28 +1,77 @@ +# Copyright 2019 Canonical Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# 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 = py35 +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 + VCA_CACERT + # These are needed so executing `charm build` succeeds + TERM + TERMINFO deps = + mock + pyyaml pytest pytest-asyncio pytest-xdist - mock - asynctest - ipdb + pytest-assume + paramiko + pylxd -[testenv:py35] -# default tox env excludes integration tests -commands = py.test -ra -v -s -x -n auto -k 'not integration' {posargs} +[testenv:py3] +# default tox env, excludes integration and serial tests +commands = + pytest --ignore modules/ --ignore tests/charms/ --tb native -ra -v -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] -basepython=python3 -commands = py.test -ra -v -s -x -n auto {posargs} +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