summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbst-marge-bot <marge-bot@buildstream.build>2019-03-04 12:09:39 +0000
committerbst-marge-bot <marge-bot@buildstream.build>2019-03-04 12:09:39 +0000
commit36171a07aebc847cfbef9847189d748cdceb751e (patch)
tree3a84855c7b65b1f23a26261899d8fdca8b883d15
parentf7c3cf98ba83fe49f93867af3261f21f7a91e1ed (diff)
parentdef4c10babd2e229b2207914999ca83ed3020f47 (diff)
downloadbuildstream-36171a07aebc847cfbef9847189d748cdceb751e.tar.gz
Merge branch 'tristan/optional-coverage' into 'master'
Make coverage optional Closes #916 See merge request BuildStream/buildstream!1189
-rw-r--r--.gitlab-ci.yml4
-rw-r--r--requirements/cov-requirements.in2
-rw-r--r--requirements/cov-requirements.txt11
-rw-r--r--requirements/dev-requirements.in2
-rw-r--r--requirements/dev-requirements.txt24
-rw-r--r--setup.cfg2
-rw-r--r--tox.ini20
7 files changed, 43 insertions, 22 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5af7013b6..cbfd44ec4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -29,6 +29,7 @@ variables:
# Diagnostics
- mount
- df -h
+ - tox --version
script:
- mkdir -p "${INTEGRATION_CACHE}"
@@ -157,9 +158,10 @@ tests-wsl:
before_script:
- mount
- df -h
+ - PATH=/root/.local/bin:$PATH tox --version
script:
- - "${TEST_COMMAND}"
+ - PATH=/root/.local/bin:$PATH ${TEST_COMMAND}
allow_failure: true
# Automatically build documentation for every commit, we want to know
diff --git a/requirements/cov-requirements.in b/requirements/cov-requirements.in
new file mode 100644
index 000000000..455b91ba6
--- /dev/null
+++ b/requirements/cov-requirements.in
@@ -0,0 +1,2 @@
+coverage == 4.4.0
+pytest-cov >= 2.5.0
diff --git a/requirements/cov-requirements.txt b/requirements/cov-requirements.txt
new file mode 100644
index 000000000..843df85f3
--- /dev/null
+++ b/requirements/cov-requirements.txt
@@ -0,0 +1,11 @@
+coverage==4.4
+pytest-cov==2.6.1
+## The following requirements were added by pip freeze:
+atomicwrites==1.3.0
+attrs==18.2.0
+more-itertools==6.0.0
+pathlib2==2.3.3
+pluggy==0.9.0
+py==1.8.0
+pytest==4.3.0
+six==1.12.0
diff --git a/requirements/dev-requirements.in b/requirements/dev-requirements.in
index 9edb23423..8b871073b 100644
--- a/requirements/dev-requirements.in
+++ b/requirements/dev-requirements.in
@@ -1,8 +1,6 @@
-coverage == 4.4.0
pylint
pycodestyle
pytest >= 3.9
-pytest-cov >= 2.5.0
pytest-datafiles >= 2.0
pytest-env
pytest-xdist
diff --git a/requirements/dev-requirements.txt b/requirements/dev-requirements.txt
index c34f6db12..d8039c316 100644
--- a/requirements/dev-requirements.txt
+++ b/requirements/dev-requirements.txt
@@ -1,25 +1,25 @@
-coverage==4.4
pylint==2.2.2
-pycodestyle==2.4.0
-pytest==4.0.2
-pytest-cov==2.6.1
+pycodestyle==2.5.0
+pytest==4.3.0
pytest-datafiles==2.0
pytest-env==0.6.2
-pytest-xdist==1.25.0
+pytest-xdist==1.26.1
pytest-timeout==1.3.3
pyftpdlib==1.5.4
## The following requirements were added by pip freeze:
apipkg==1.5
astroid==2.1.0
-atomicwrites==1.2.1
+atomicwrites==1.3.0
attrs==18.2.0
execnet==1.5.0
-isort==4.3.4
+isort==4.3.9
lazy-object-proxy==1.3.1
mccabe==0.6.1
-more-itertools==5.0.0
-pluggy==0.8.0
-py==1.7.0
-pytest-forked==0.2
+more-itertools==6.0.0
+pathlib2==2.3.3
+pluggy==0.9.0
+py==1.8.0
+pytest-forked==1.0.2
six==1.12.0
-wrapt==1.10.11
+typed-ast==1.3.1
+wrapt==1.11.1
diff --git a/setup.cfg b/setup.cfg
index ec20435ce..ca623aa4b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -11,7 +11,7 @@ parentdir_prefix = BuildStream-
test=pytest
[tool:pytest]
-addopts = --verbose --basetemp ./tmp --cov=buildstream --cov-config .coveragerc --durations=20
+addopts = --verbose --basetemp ./tmp --durations=20
norecursedirs = tests/integration/project integration-cache tmp __pycache__ .eggs
python_files = tests/*/*.py
env =
diff --git a/tox.ini b/tox.ini
index 97de44602..78e491973 100644
--- a/tox.ini
+++ b/tox.ini
@@ -12,13 +12,20 @@ skip_missing_interpreters = true
#
[testenv]
commands =
- pytest --basetemp {envtmpdir} {posargs}
- - mkdir -p .coverage-reports
- - mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
+ # Running with coverage reporting enabled
+ py{35,36,37}-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
+ py{35,36,37}-!nocover: mkdir -p .coverage-reports
+ py{35,36,37}-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
+
+ # Running with coverage reporting disabled
+ py{35,36,37}-nocover: pytest --basetemp {envtmpdir} {posargs}
deps =
- -rrequirements/requirements.txt
- -rrequirements/dev-requirements.txt
- -rrequirements/plugin-requirements.txt
+ py{35,36,37}: -rrequirements/requirements.txt
+ py{35,36,37}: -rrequirements/dev-requirements.txt
+ py{35,36,37}: -rrequirements/plugin-requirements.txt
+
+ # Only require coverage and pytest-cov when using it
+ !nocover: -rrequirements/cov-requirements.txt
passenv =
BST_FORCE_BACKEND
GI_TYPELIB_PATH
@@ -44,6 +51,7 @@ commands =
deps =
-rrequirements/requirements.txt
-rrequirements/dev-requirements.txt
+ -rrequirements/cov-requirements.txt
setenv =
COVERAGE_FILE = {toxinidir}/.coverage-reports/.coverage