added coverage helper script
Some checks failed
Rust/spacepackets/pipeline/head There was a failure building this commit
Rust/spacepackets/pipeline/pr-main There was a failure building this commit

This commit is contained in:
Robin Müller 2023-12-01 10:22:44 +01:00
parent 2ba2998426
commit c99b6fddec
Signed by: muellerr
GPG Key ID: A649FB78196E3849

28
coverage.py Executable file
View File

@ -0,0 +1,28 @@
#!/usr/bin/env python3
import os
import argparse
import webbrowser
def generate_cov_report(open_report: bool):
os.environ["RUSTFLAGS"] = "-Cinstrument-coverage"
os.environ["LLVM_PROFILE_FILE"] = "target/coverage/%p-%m.profraw"
os.system("cargo test")
os.system(
"grcov . -s . --binary-path ./target/debug/ -t html --branch --ignore-not-existing "
"-o ./target/debug/coverage/"
)
if open_report:
coverage_report_path = os.path.abspath("./target/debug/coverage/index.html")
webbrowser.open_new_tab(coverage_report_path)
def main():
parser = argparse.ArgumentParser(description="Generate coverage report and optionally open it in a browser")
parser.add_argument("--open", action="store_true", help="Open the coverage report in a browser")
args = parser.parse_args()
generate_cov_report(args.open)
if __name__ == "__main__":
main()