test(coverage): a reproducible coverage preset, report and floor check

This commit is contained in:
Martino Ferrari committed 2026-09-28 21:23:22 +02:00
1 parent 41b79313a7
commit e9985eeeaf
6 files changed
+603

No files matched your search

+23
View File
@@ -49,6 +49,25 @@
"PLOT_BUILD_QT6": true,
"PLOT_BUILD_GTK4": true
}
},
{
"name": "linux-coverage",
"displayName": "Linux Debug (code coverage)",
"description": "The instrumented tree behind tools/coverage.sh: src/** compiled with --coverage -O0 -g (and linked with --coverage, so the test binary writes .gcda), built into build/cov. Adapters and examples stay off so the measurement is the library plus its unit suite and the build stays quick; PLOT_BUILD_TESTS=ON and PLOT_COVERAGE=ON are required, the latter adding the `coverage` target. Nothing here changes the other presets.",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/cov",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_CXX_FLAGS": "--coverage -O0 -g",
"CMAKE_EXE_LINKER_FLAGS": "--coverage",
"PLOT_BUILD_TESTS": true,
"PLOT_COVERAGE": true,
"PLOT_BUILD_EXAMPLES": false,
"PLOT_BUILD_GLFW": false,
"PLOT_BUILD_IMGUI": false,
"PLOT_BUILD_QT6": false,
"PLOT_BUILD_GTK4": false
}
}
],
"buildPresets": [
@@ -63,6 +82,10 @@
{
"name": "linux-asan",
"configurePreset": "linux-asan"
},
{
"name": "linux-coverage",
"configurePreset": "linux-coverage"
}
]
}