eclipse-score / eclipse-score/reference_integration
Coverage calculation for C++ and Rust
- Dominant language
- Python
- Stars
- 5
- Forks
- 37
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 22
Description
Currently issues with coverage calculation are observed across different Modules. We need a common solution that can be applied and used in reference_integration.
# Problem definition
## Mutual
- we need solution that is common and can be reused by everyone
- we need justifications when coverage != 100%, we need mechanisms to justify etc.
- tooling should support platform variants, allows justifications only for specific one, etc.
- tooling should allow easy use to developers and clear information where improvements are needed
- tooling will require certification but there is no other known alternative that will fulfill all our requirements
- tool requirements initially defined in https://github.com/eclipse-score/communication/pull/549
## C++
- different frameworks have different statements definition - we need that aligned in SCORE
- `bazel coverage` is not 100% reliable
- PR with suggested changes as reference
- No other alternatives exist for our knowledge right now
## Rust
- currently only line coverage is calculated
- ferrocene toolchain supports only Linux (QNX UTs don't work)
- there was a new PR in toolchains to support coverage in QNX @PiotrKorkus to check if that works
https://github.com/eclipse-score/bazel_cpp_toolchains/pull/62
- other coverages where quoted to ferrocene. Branch coverage would be possible to get with other open-source solutions
It should be possible to use a common tool for generating coverage for both languages.
## Next steps
- Get QNX coverage working for C++
- Look into Rust coverage
- Rust and C++ report should have a combined report
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.