diff --git a/src/bootstrap/src/core/build_steps/test.rs b/src/bootstrap/src/core/build_steps/test.rs index da4b135083c63..39667d16b7b6d 100644 --- a/src/bootstrap/src/core/build_steps/test.rs +++ b/src/bootstrap/src/core/build_steps/test.rs @@ -1423,7 +1423,7 @@ impl Step for Coverage { const ONLY_HOSTS: bool = false; fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_> { - run.alias(Self::SUITE) + run.suite_path(Self::PATH) } fn make_run(run: RunConfig<'_>) { @@ -1438,6 +1438,7 @@ impl Step for Coverage { } } +// Aliases for running the coverage tests in only one mode. coverage_test_alias!(CoverageMap { alias_and_mode: "coverage-map", default: true, diff --git a/tests/coverage/README.md b/tests/coverage/README.md index 146fbff5b204d..f1e403c65e35e 100644 --- a/tests/coverage/README.md +++ b/tests/coverage/README.md @@ -1,13 +1,16 @@ -Many of these tests were copied from `tests/run-coverage` in order to -capture the current behavior of the instrumentor on non-trivial programs. -The actual mappings have not been closely inspected. +The tests in this directory are shared by two different test modes, and can be +run in multiple different ways: + +- `./x.py test coverage-map` (compiles to LLVM IR and checks coverage mappings) +- `./x.py test run-coverage` (runs a test binary and checks its coverage report) +- `./x.py test coverage` (runs both `coverage-map` and `run-coverage`) ## Maintenance note These tests can be sensitive to small changes in MIR spans or MIR control flow, especially in HIR-to-MIR lowering or MIR optimizations. -If you haven't touched the coverage code directly, and the `run-coverage` test -suite still works, then it should usually be OK to just `--bless` these -coverage mapping tests as necessary, without worrying too much about the exact -changes. +If you haven't touched the coverage code directly, and the tests still pass in +`run-coverage` mode, then it should usually be OK to just re-bless the mappings +as necessary with `./x.py test coverage-map --bless`, without worrying too much +about the exact changes.