diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b416eb02..77e81bac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,15 +33,28 @@ jobs: run: | pip install -r requirements.txt pip install -r docs/requirements.txt + + - name: Install lcov + run: | + sudo apt-get update + sudo apt-get install -y lcov - name: Build package run: | - python scripts/build/install.py - + CXXFLAGS=--coverage CFLAGS=--coverage python scripts/build/install.py +# coverage tests - name: Run tests run: | python -m pytest --doctest-modules --cov=./ --cov-report=xml -s + - name: Capture Coverage Data with lcov + run: | + lcov --capture --directory . --output-file coverage.info --no-external + + - name: Generate HTML Coverage Report with genhtml + run: | + genhtml coverage.info --output-directory coverage_report + - name: Upload Coverage uses: codecov/codecov-action@v3 with: diff --git a/environment.yml b/environment.yml index ca80a2b9..ba0dc8c1 100644 --- a/environment.yml +++ b/environment.yml @@ -11,3 +11,4 @@ dependencies: - sphinx==5.0 - sphinx-readable-theme==1.3.0 - myst_nb==0.17.2 + - lcov