From: garciadeblas Date: Wed, 19 Feb 2020 16:40:44 +0000 (+0100) Subject: Added coverage tests in tox X-Git-Tag: v8.0.0rc2~5 X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FLCM.git;a=commitdiff_plain;h=92aa62718f422d119503dedf59da93cb8d53abc2 Added coverage tests in tox Change-Id: I66a56f9480a733a5cfd06abbce6dbffd0e4f80d3 Signed-off-by: garciadeblas --- diff --git a/.gitignore-common b/.gitignore-common index 4a339f3..08ca7f0 100644 --- a/.gitignore-common +++ b/.gitignore-common @@ -48,3 +48,9 @@ dist *.egg-info .eggs +# Unit test / coverage reports +.coverage +cover +coverage.xml +nosetests.xml + diff --git a/nose2.cfg b/nose2.cfg new file mode 100644 index 0000000..ec96ace --- /dev/null +++ b/nose2.cfg @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +## +# Copyright ETSI +# This file is part of ETSI OSM +# All Rights Reserved. +# +# 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. +# +# For those usages not covered by the Apache License, Version 2.0 please +# contact: osslegalrouting@vmware.com +## + +[unittest] +plugins = nose2.plugins.junitxml + +[junit-xml] +always-on = True +keep_restricted = False +path = nosetests.xml +test_fullname = False + diff --git a/tox.ini b/tox.ini index 65a62e5..1e0b679 100644 --- a/tox.ini +++ b/tox.ini @@ -14,18 +14,35 @@ # limitations under the License. [tox] -envlist = flake8, unittest -toxworkdir={homedir}/.tox +envlist = cover, flake8, unittest [testenv] basepython = python3 install_command = python3 -m pip install -r requirements.txt -U {opts} {packages} -deps = -r{toxinidir}/test-requirements.txt -commands=python3 -m unittest discover -v +deps = -rtest-requirements.txt +commands= + python3 -m unittest discover -v + +[testenv:cover] +basepython = python3 +deps = + nose2 + nose2-cov + coverage + -rrequirements.txt + -rtest-requirements.txt +commands = + coverage erase + nose2 -C --coverage osm_lcm --plugin nose2.plugins.junitxml -s osm_lcm/tests + coverage report --omit='*tests*' + coverage html -d ./cover --omit='*tests*' + coverage xml -o coverage.xml --omit='*tests*' [testenv:flake8] -basepython = python3.6 -deps = flake8 +basepython = python3 +deps = + flake8 + -rrequirements.txt commands = flake8 osm_lcm --max-line-length 120 \ --exclude .svn,CVS,.gz,.git,__pycache__,.tox,local,temp,frontend_grpc.py,frontend_pb2.py \ --ignore W291,W293,E226,W504