Fix tox configuration for coverage 63/99763/2
authorMiroslav Los <miroslav.los@pantheon.tech>
Wed, 18 Dec 2019 12:29:54 +0000 (13:29 +0100)
committerMiroslav Los <miroslav.los@pantheon.tech>
Wed, 18 Dec 2019 13:40:05 +0000 (14:40 +0100)
Coverage is unable to report on modules unless PYTHONPATH is set.
Put test results into separate files for python 2 and 3.
Merge coverage of python 2 and 3 in a final report.
Silence warnings on xunit2 pytest output format.

Signed-off-by: Miroslav Los <miroslav.los@pantheon.tech>
Issue-ID: DCAEGEN2-2005
Change-Id: I2740231274c153d178e7d9c9103fc70657f7558d

cdap/cdapplugin/tox-local.ini
cdap/cdapplugin/tox.ini
clamp-policy/tox-local.ini
clamp-policy/tox.ini
dcae-policy/tox-local.ini
dcae-policy/tox.ini
docker/tox.ini
k8s/tox.ini
relationships/tox.ini

index 1664561..d14c8a1 100644 (file)
@@ -1,11 +1,30 @@
+# tox -c tox-local.ini
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --cov {envsitepackagesdir}/cdapcloudify  --cov-report html
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov cdapcloudify
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
+    coverage html
+
+[pytest]
+junit_family = xunit2
index 32445ed..5c399a7 100644 (file)
@@ -1,12 +1,29 @@
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --junitxml xunit-results.xml --cov cdapcloudify --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov cdapcloudify
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2
index e41b3f4..314229c 100644 (file)
@@ -1,13 +1,30 @@
-# tox -c tox-local.ini | tee -a logs/test_clamppolicyplugin.log 2>&1
+# tox -c tox-local.ini
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
-# recreate = True
 commands=
-    pytest -v --cov clamppolicyplugin --cov-report html
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov clamppolicyplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
+    coverage html
+
+[pytest]
+junit_family = xunit2
index 9e09c4a..21ecdb2 100644 (file)
@@ -1,13 +1,29 @@
-# content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --junitxml xunit-results.xml --cov clamppolicyplugin --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov clamppolicyplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2
index d3ffbb0..125233e 100644 (file)
@@ -1,8 +1,12 @@
-# tox -c tox-local.ini | tee -a logs/test_dcaepolicyplugin.log 2>&1
+# tox -c tox-local.ini
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
@@ -10,7 +14,20 @@ deps=
     pytest-cov
 whitelist_externals=
     /bin/mkdir
-# recreate = True
 commands=
     mkdir -p logs
-    pytest -v --cov dcaepolicyplugin --cov-report html
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov dcaepolicyplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
+    coverage html
+
+[pytest]
+junit_family = xunit2
index 42a4c39..2315666 100644 (file)
@@ -1,8 +1,11 @@
-# content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
@@ -12,5 +15,18 @@ whitelist_externals=
     /bin/mkdir
 commands=
     mkdir -p logs
-    pytest --junitxml xunit-results.xml --cov dcaepolicyplugin --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov dcaepolicyplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2
index c38918a..96c0e1f 100644 (file)
@@ -1,13 +1,29 @@
-# content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --junitxml xunit-results.xml --cov dockerplugin --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov dockerplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2
index 3bea42d..24fb8d5 100644 (file)
@@ -1,13 +1,29 @@
-# content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --junitxml xunit-results.xml --cov configure --cov k8sclient --cov k8splugin --cov msb --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov configure --cov k8sclient --cov k8splugin --cov msb
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2
index 499accb..c734632 100644 (file)
@@ -1,13 +1,29 @@
-# content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py27,py36
+envlist = py27,py36,cov
 
 [testenv]
+# coverage can only find modules if pythonpath is set
+setenv=
+    PYTHONPATH={toxinidir}
+    COVERAGE_FILE=.coverage.{envname}
 deps=
     -rrequirements.txt
     pytest
     coverage
     pytest-cov
 commands=
-    pytest --junitxml xunit-results.xml --cov relationshipplugin --cov-report xml
+    coverage erase
+    pytest --junitxml xunit-results.{envname}.xml --cov relationshipplugin
+
+[testenv:cov]
+skip_install = true
+deps=
+    coverage
+setenv=
+    COVERAGE_FILE=.coverage
+commands=
+    coverage combine
     coverage xml
+
+[pytest]
+junit_family = xunit2