diff --git a/bench/reachability-benchmark/tools/validate.py b/bench/reachability-benchmark/tools/validate.py index 22f8d7ae4..711e9495a 100644 --- a/bench/reachability-benchmark/tools/validate.py +++ b/bench/reachability-benchmark/tools/validate.py @@ -24,7 +24,10 @@ SCHEMAS = { "case": ROOT / "schemas" / "case.schema.yaml", "entrypoints": ROOT / "schemas" / "entrypoints.schema.yaml", "truth": ROOT / "schemas" / "truth.schema.json", + "coverage": ROOT / "schemas" / "coverage.schema.json", + "trace": ROOT / "schemas" / "trace.schema.json", "submission": ROOT / "schemas" / "submission.schema.json", + "manifest": ROOT / "benchmark" / "schemas" / "benchmark-manifest.schema.json", } @@ -60,7 +63,10 @@ def collect_all(directory: Path) -> Iterable[Tuple[str, Path]]: "case": ("case",), "entrypoints": ("entrypoints", "entrypoint"), "truth": ("truth",), + "coverage": ("coverage",), + "trace": ("trace", "traces"), "submission": ("submission",), + "manifest": ("manifest",), } for path in sorted(directory.rglob("*")): if not path.is_file(): @@ -76,7 +82,16 @@ def parse_args(): parser = argparse.ArgumentParser(description="Validate reachability benchmark files against schemas.") parser.add_argument( "kind", - choices=["case", "entrypoints", "truth", "submission", "all"], + choices=[ + "case", + "entrypoints", + "truth", + "coverage", + "trace", + "submission", + "manifest", + "all", + ], help="Which schema to validate against or 'all' to auto-detect in a directory", ) parser.add_argument(