Fix coverage job for Python 3

* add coverage check job to Zuul
* migrate to stestr as described in PTI [1]
* unmock OffsetOutOfRangeError to correctly recognize it as Exception
and not a mock. Otherwise TypeError exception is thrown [2].

[1] https://governance.openstack.org/tc/reference/pti/python.html#coverage-jobs
[2] http://logs.openstack.org/60/606660/2/check/openstack-tox-cover/b3c1492/testr_results.html.gz

Change-Id: Idcb8b11778ce02596c1c02417ee6c88a33c7da03
Story: 2003240
Task: 26900
This commit is contained in:
Witold Bedyk 2018-10-04 14:04:18 +02:00
parent 725d34c429
commit 1017229c39
3 changed files with 10 additions and 4 deletions

View File

@ -1,5 +1,6 @@
- project:
templates:
- openstack-cover-jobs
- openstack-python-jobs
- openstack-python35-jobs
- openstack-python36-jobs

View File

@ -16,6 +16,7 @@ from oslotest import base
from monasca_common.kafka import consumer
from monasca_common.kafka import producer
from monasca_common.kafka_lib import common as kafka_common
FAKE_KAFKA_URL = "kafka_url"
@ -104,6 +105,7 @@ class TestKafkaConsumer(base.BaseTestCase):
self.mock_kafka_client = self.kafka_client_patcher.start()
self.mock_kafka_common = self.kafka_common_patcher.start()
self.mock_kafka_common.OffsetOutOfRangeError = kafka_common.OffsetOutOfRangeError
self.mock_kafka_consumer = self.kafka_consumer_patcher.start()
self.kazoo_patcher.start()

11
tox.ini
View File

@ -41,11 +41,14 @@ commands =
[testenv:cover]
basepython = python2.7
setenv =
PYTHON=coverage run --source monasca_common --parallel-mode
commands =
{[testenv]commands}
coverage erase
python setup.py test --coverage --testr-args='{posargs}' --coverage-package-name=monasca_common
coverage report
coverage erase
stestr run '{posargs}'
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:debug]
basepython = python3