Skip to content

Adds logging to gathering code coverage artifacts #5

Adds logging to gathering code coverage artifacts

Adds logging to gathering code coverage artifacts #5

Workflow file for this run

name: Unit tests
on:
push:
branches: [main, hirte-*]
pull_request:
branches: [main, hirte-*]
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
container:
image: quay.io/bluechi/build-base:latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
with:
submodules: 'true'
- name: Building BlueChi (with clang/LLVM)
run: |
export CC=clang
export CXX=clang++
meson setup builddir
meson configure builddir
meson compile -C builddir
rm -rf builddir
- name: Building BlueChi
run: |
meson setup builddir
meson configure \
-Db_coverage=true \
-Dwith_analyzer=true \
builddir
meson compile -C builddir
- name: Running unit tests
run: |
meson test --wrap='valgrind --leak-check=full --error-exitcode=1 --track-origins=yes' -C builddir
- name: Generating coverage report
run: |
ninja coverage-html -C builddir
- name: Upload unit test logs
if: always()
uses: actions/upload-artifact@v3
with:
name: unit-test-logs
path: ./builddir/meson-logs/testlog-valgrind.txt
- name: Upload coverage HTML artifact
uses: actions/upload-artifact@v3
with:
name: coverage
path: builddir/meson-logs/coveragereport
if-no-files-found: error
- name: Report coverage results
run: |
cd builddir/meson-logs/coveragereport/
html2text --ignore-images --ignore-links -b 0 --bypass-tables index.html >> $GITHUB_STEP_SUMMARY