blob: 595b5a914c9901f8a2249d81690ee0533c493932 [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]
bravof4b9f79e2020-12-02 16:42:05 -030028envlist = cover, py3, flake8
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 Diazb7261612018-05-11 18:00:16 -030054[testenv:flake8]
55basepython = python3
56deps = flake8
beierl2329b922019-07-12 11:55:36 -040057 -r{toxinidir}/requirements.txt
Benjamin Diazb7261612018-05-11 18:00:16 -030058commands =
59 flake8 osm_mon
Helena McGough95b92b32017-10-01 12:03:53 +010060
Benjamin Diazb7261612018-05-11 18:00:16 -030061[testenv:build]
62basepython = python3
63deps = stdeb
64 setuptools-version-command
65commands = python3 setup.py --command-packages=stdeb.command bdist_deb
Helena McGough95b92b32017-10-01 12:03:53 +010066
67[flake8]
68# E123, E125 skipped as they are invalid PEP-8.
Benjamin Diazb7261612018-05-11 18:00:16 -030069max-line-length = 120
Helena McGough95b92b32017-10-01 12:03:53 +010070show-source = True
David Garcia6a39cb02020-09-22 11:29:01 +020071ignore = E123,E125,E241,W503
Helena McGough95b92b32017-10-01 12:03:53 +010072builtins = _
Helena McGoughbbbc9f62017-11-29 15:12:07 +000073exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,devops_stages/*,.rst