diff options
| author | Joshua Nelson <jnelson@cloudflare.com> | 2022-03-26 22:50:46 -0500 |
|---|---|---|
| committer | Joshua Nelson <jnelson@cloudflare.com> | 2022-03-26 23:14:27 -0500 |
| commit | d0a326044ec21fa22828beaedeb9b23b856ea592 (patch) | |
| tree | 98a08281266a5a811c47e7cf45957df4e9bae5c9 | |
| parent | 37b55c8a0cafdb60b9168da34f904acc70157df8 (diff) | |
| download | rust-d0a326044ec21fa22828beaedeb9b23b856ea592.tar.gz rust-d0a326044ec21fa22828beaedeb9b23b856ea592.zip | |
Print the full relative path to failed tests
Before:
```
failures:
[ui] rustdoc-ui/intra-doc/feature-gate-intra-doc-pointers.rs
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 163 filtered out; finished in 0.45s
```
After:
```
failures:
[ui] src/test/rustdoc-ui/intra-doc/feature-gate-intra-doc-pointers.rs
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 163 filtered out; finished in 0.45s
```
This allows copy pasting the path or using Ctrl+Click in IDEs to go directly to the file, instead of having to edit the filename first.
| -rw-r--r-- | src/tools/compiletest/src/main.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/tools/compiletest/src/main.rs b/src/tools/compiletest/src/main.rs index 503b624114a..8c1f28f1407 100644 --- a/src/tools/compiletest/src/main.rs +++ b/src/tools/compiletest/src/main.rs @@ -744,12 +744,10 @@ fn make_test_name( testpaths: &TestPaths, revision: Option<&String>, ) -> test::TestName { - // Convert a complete path to something like - // - // ui/foo/bar/baz.rs - let path = PathBuf::from(config.src_base.file_name().unwrap()) - .join(&testpaths.relative_dir) - .join(&testpaths.file.file_name().unwrap()); + // Print the name of the file, relative to the repository root. + // `src_base` looks like `/path/to/rust/src/test/ui` + let root_directory = config.src_base.parent().unwrap().parent().unwrap().parent().unwrap(); + let path = testpaths.file.strip_prefix(root_directory).unwrap(); let debugger = match config.debugger { Some(d) => format!("-{}", d), None => String::new(), |
