Sonar corrections. Unit tests and code coverage added
[sim/a1-interface.git] / tox.ini
diff --git a/tox.ini b/tox.ini
index 80839a2..9936af4 100644 (file)
--- a/tox.ini
+++ b/tox.ini
 # ==================================================================================
 
 [tox]
-envlist = docs,docs-linkcheck
+envlist = code,docs,docs-linkcheck
 minversion = 2.0
 skipsdist = true
 
+; basic test and coverage jobs
+[testenv:code]
+basepython = python3.8
+deps=
+    pytest
+    coverage
+    pytest-cov
+    requests
+    connexion
+
+setenv =
+    TESTS_BASE_PATH = {toxinidir}/near-rt-ric-simulator/tests
+commands =
+; Two test execution with pytest is needed as each simulator version need to be started separately. In addtion, each simulator need
+; environment setup that would cause interference if both simulator are executed in the same pytest run.
+; Each pytest run also need to point to the specific test case file for the reasons mentioned above.
+; Note that the second pytest (additional pytest added in the future) uses the 'append' flag to combine the coverage data
+; from the previous tests. The first pytest shall not have the 'append' since the it is supposed to erase previous coverage data
+; from earlier tox run.
+    pytest --cov {toxinidir}/near-rt-ric-simulator --cov-report xml --cov-report term-missing --cov-report html --cov-fail-under=70 \
+    {toxinidir}/near-rt-ric-simulator/tests/OSC_2.1.0/test_osc_2_1_0.py
+    pytest --cov-append --cov {toxinidir}/near-rt-ric-simulator --cov-report xml --cov-report term-missing --cov-report html \
+    --cov-fail-under=70 {toxinidir}/near-rt-ric-simulator/tests/STD_1.1.3/test_std_1_1_3.py
+    coverage xml -i
+
 # doc jobs
 [testenv:docs]
 whitelist_externals = echo