diff options
| author | Zalathar <Zalathar@users.noreply.github.com> | 2024-10-14 22:40:13 +1100 |
|---|---|---|
| committer | Zalathar <Zalathar@users.noreply.github.com> | 2024-10-14 22:55:51 +1100 |
| commit | c6e1fbf8ebbbec0d7b2deee86a1bc67ec98e1541 (patch) | |
| tree | 641294498559c29ecbc64c4b4186a812620e3e99 | |
| parent | f6648f252a05a0a46c865d7ec836b46290613bf9 (diff) | |
| download | rust-c6e1fbf8ebbbec0d7b2deee86a1bc67ec98e1541.tar.gz rust-c6e1fbf8ebbbec0d7b2deee86a1bc67ec98e1541.zip | |
Fix up-to-date checking for run-make tests
This special case in `output_base_dir` had the unfortunate side-effect of causing all run-make tests to share the same `stamp` file. So as soon as any one of them succeeded, all of the failed tests would be considered up-to-date and would no longer run in subsequent test invocations.
| -rw-r--r-- | src/tools/compiletest/src/common.rs | 10 | ||||
| -rw-r--r-- | tests/run-make/README.md | 2 |
2 files changed, 3 insertions, 9 deletions
diff --git a/src/tools/compiletest/src/common.rs b/src/tools/compiletest/src/common.rs index a5418ad8384..1ee00a3a4e8 100644 --- a/src/tools/compiletest/src/common.rs +++ b/src/tools/compiletest/src/common.rs @@ -759,14 +759,8 @@ pub fn output_testname_unique( /// test/revision should reside. Example: /// /path/to/build/host-triple/test/ui/relative/testname.revision.mode/ pub fn output_base_dir(config: &Config, testpaths: &TestPaths, revision: Option<&str>) -> PathBuf { - // In run-make tests, constructing a relative path + unique testname causes a double layering - // since revisions are not supported, causing unnecessary nesting. - if config.mode == Mode::RunMake { - output_relative_path(config, &testpaths.relative_dir) - } else { - output_relative_path(config, &testpaths.relative_dir) - .join(output_testname_unique(config, testpaths, revision)) - } + output_relative_path(config, &testpaths.relative_dir) + .join(output_testname_unique(config, testpaths, revision)) } /// Absolute path to the base filename used as output for the given diff --git a/tests/run-make/README.md b/tests/run-make/README.md index 40359903473..9e1eaa881c9 100644 --- a/tests/run-make/README.md +++ b/tests/run-make/README.md @@ -29,7 +29,7 @@ The setup for the `rmake.rs` version is a 3-stage process: structure within `build/<target>/test/run-make/` ``` - <test-name>/ + <test-name>/<test-name>/ rmake.exe # recipe binary rmake_out/ # sources from test sources copied over ``` |
