From 4bbd0f138f0066d14e73fdc1531653378b218897 Mon Sep 17 00:00:00 2001 From: "Olivier J.N. Bertrand" <olivier.bertrand@uni-bielefeld.de> Date: Thu, 17 May 2018 14:22:15 +0200 Subject: [PATCH] Add coverage function --- .coveragerc | 12 ++++++++++++ .gitlab-ci.yml | 38 +++++++++++++++++++++++++++----------- setup.py | 3 ++- 3 files changed, 41 insertions(+), 12 deletions(-) create mode 100644 .coveragerc diff --git a/.coveragerc b/.coveragerc new file mode 100644 index 0000000..9ef16d0 --- /dev/null +++ b/.coveragerc @@ -0,0 +1,12 @@ +# .coveragerc to control coverage.py +[run] +branch = True +omit = + # Omit all test_ functions + **/test_* + # Omit blender functions / can be only tested with blender files + **/blend* +source = navipy + +[html] +directory = coverage_html_report \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bbc3a1d..966267a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,7 @@ image: python:latest stages: - build - test + - coverage - doc_build - deploy @@ -26,8 +27,11 @@ navipy_install: flake8: stage: test + dependencies: + - navipy_install + script: - - pip3 install tox flake8 + - source $CI_PROJECT_DIR/venv/bin/activate - python3 -m flake8 navipy/*.py navipy_unittest: @@ -37,22 +41,33 @@ navipy_unittest: script: - source $CI_PROJECT_DIR/venv/bin/activate + - python3 -m coverage run -m unittest discover navipy + + artifacts: + paths: + - .coverage coverage: - stage: test + stage: coverage + dependencies: + - navipy_install + - navipy_unittest + script: - - pip3 install --user nose - - pip3 install --user coverage - - python3 -m nose -c .noserc -q --cover-html-dir=build --cover-html - - python3 -m coverage report -m - coverage: '/TOTAL.+ ([0-9]{1,3}%)/' + - source $CI_PROJECT_DIR/venv/bin/activate + - python3 -m coverage html + artifacts: paths: - - build + - coverage_html_report expire_in: 1 day doc_build: stage: doc_build + dependencies: + - navipy_install + - coverage + script: - source $CI_PROJECT_DIR/venv/bin/activate - pip3 install --user sphinx sphinx_rtd_theme @@ -60,7 +75,7 @@ doc_build: artifacts: paths: - - build + - doc/build pages: @@ -76,11 +91,12 @@ pages: script: - ssh -p50022 bolirev@bioneuro77.biologie.uni-bielefeld.de "mkdir -p /fastdata/html/navipy/" - mkdir -p public/coverage - - cp -fr docs/build/html/* public/ - - cp -fr build/* public/coverage/ + - cp -fr doc/build/html/* public/ + - cp -fr coverage_html_report/* public/coverage/ dependencies: - coverage + - doc_build artifacts: paths: diff --git a/setup.py b/setup.py index d445eaf..aa1cce6 100644 --- a/setup.py +++ b/setup.py @@ -43,7 +43,8 @@ setup_dict = {'name': 'navipy', 'sphinx-argparse', 'ipython', 'flake8', - 'tox'], + 'tox', + 'coverage'], 'package_data': {'navipy': ['resources/database.db', 'resources/*.blend']}, 'include_package_data': True, -- GitLab