Add instructions for code coverage #30

Merged
wojtek merged 1 commits from 28---add-instructions-for-code-coverage into main 2023-04-12 19:55:58 +02:00

32
README.md Normal file
View File

@ -0,0 +1,32 @@
# Music Hoard
## Code Coverage
### Pre-requisites
``` sh
rustup component add llvm-tools-preview
cargo install grcov
```
### Generating Code Coverage
```sh
cargo clean
env RUSTFLAGS="-C instrument-coverage" \
LLVM_PROFILE_FILE="target/debug/profraw/musichoard-%p-%m.profraw" \
cargo test
grcov target/debug/profraw \
--binary-path ./target/debug/ \
--output-types html \
--source-dir . \
--ignore-not-existing \
--ignore "tests/*" \
--ignore "src/main.rs" \
--excl-start "#\[cfg\(test\)\]" \
--output-path ./target/debug/coverage/
xdg-open target/debug/coverage/index.html
```
Note that some changes may not be visible until `target/debug/coverage` is removed and the `grcov`
command is rerun.