import argparse import json def main(coverage_file, fail_under): with open(coverage_file, encoding="utf-8") as f: coverage_json = json.load(f) coverage = float(coverage_json["message"][:-1]) return coverage >= fail_under if __name__ == "__main__": parser = argparse.ArgumentParser(description="Check coverage output by grcov") parser.add_argument("--coverage-file", type=str, required=True, help="Path to the coverage.json file output by grcov") parser.add_argument("--fail-under", type=float, default=100., help="Threshold under which coverage is insufficient") args = parser.parse_args() if not main(args.coverage_file, args.fail_under): exit(2)