blob: efea4e625667f9a78a26848d27b13464c550c239 [file] [log] [blame]
Helena McGough95b92b32017-10-01 12:03:53 +01001# Copyright 2017 Intel Research and Development Ireland Limited
2# *************************************************************
3
4# This file is part of OSM Monitoring module
5# All Rights Reserved to Intel Corporation
6
7# Licensed under the Apache License, Version 2.0 (the "License"); you may
8# not use this file except in compliance with the License. You may obtain
9# a copy of the License at
10
11# http://www.apache.org/licenses/LICENSE-2.0
12
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16# License for the specific language governing permissions and limitations
17# under the License.
18
19# For those usages not covered by the Apache License, Version 2.0 please
20# contact: helena.mcgough@intel.com or adrian.hoban@intel.com
21##
22
23# Tox (http://tox.testrun.org/) is a tool for running tests
24# in multiple virtualenvs. This configuration file will run the
25# test suite on all supported python versions. To use it, "pip install tox"
26# and then run "tox" from this directory.
Helena McGough95b92b32017-10-01 12:03:53 +010027[tox]
beierl8c37bd02019-07-31 15:06:10 -040028envlist = cover, py3, flake8, pylint
beierl2329b922019-07-12 11:55:36 -040029
Helena McGough95b92b32017-10-01 12:03:53 +010030
31[testenv]
beierl2329b922019-07-12 11:55:36 -040032usedevelop = True
33install_command = pip install -U {opts} {packages}
34setenv = VIRTUAL_ENV={envdir}
35 PYTHONDONTWRITEBYTECODE = 1
36 TESTS_DIR=./osm_mon/tests/unit/
37deps = -r{toxinidir}/requirements.txt
38 -r{toxinidir}/test-requirements.txt
39commands =
40 coverage erase
41
42[testenv:cover]
43basepython = python3
beierl8c37bd02019-07-31 15:06:10 -040044deps = nose2
45 -r{toxinidir}/requirements.txt
46 -r{toxinidir}/test-requirements.txt
beierl2329b922019-07-12 11:55:36 -040047commands =
48 coverage erase
beierl8c37bd02019-07-31 15:06:10 -040049 nose2 -C --coverage osm_mon --plugin nose2.plugins.junitxml
beierl2329b922019-07-12 11:55:36 -040050 coverage report --omit='*tests*'
51 coverage html -d ./cover --omit='*tests*'
beierlccbe6802019-09-03 12:48:31 -040052 coverage xml -o coverage.xml --omit='*tests*'
Helena McGough95b92b32017-10-01 12:03:53 +010053
Benjamin Diaz649e6b22019-04-10 17:06:19 -030054[testenv:pylint]
55basepython = python3
56deps = pylint
beierl2329b922019-07-12 11:55:36 -040057 -r{toxinidir}/requirements.txt
beierl730dfd82019-06-24 15:51:33 -040058 -r{toxinidir}/test-requirements.txt
Benjamin Diaz649e6b22019-04-10 17:06:19 -030059commands =
60 pylint -E osm_mon
61
Benjamin Diazb7261612018-05-11 18:00:16 -030062[testenv:flake8]
63basepython = python3
64deps = flake8
beierl2329b922019-07-12 11:55:36 -040065 -r{toxinidir}/requirements.txt
Benjamin Diazb7261612018-05-11 18:00:16 -030066commands =
67 flake8 osm_mon
Helena McGough95b92b32017-10-01 12:03:53 +010068
Benjamin Diazb7261612018-05-11 18:00:16 -030069[testenv:build]
70basepython = python3
71deps = stdeb
72 setuptools-version-command
73commands = python3 setup.py --command-packages=stdeb.command bdist_deb
Helena McGough95b92b32017-10-01 12:03:53 +010074
75[flake8]
76# E123, E125 skipped as they are invalid PEP-8.
Benjamin Diazb7261612018-05-11 18:00:16 -030077max-line-length = 120
Helena McGough95b92b32017-10-01 12:03:53 +010078show-source = True
David Garcia6a39cb02020-09-22 11:29:01 +020079ignore = E123,E125,E241,W503
Helena McGough95b92b32017-10-01 12:03:53 +010080builtins = _
Helena McGoughbbbc9f62017-11-29 15:12:07 +000081exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,devops_stages/*,.rst