about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAugie Fackler <augie@google.com>2025-08-14 14:18:25 -0400
committerAugie Fackler <augie@google.com>2025-08-18 15:28:48 -0400
commit79d30067f3bc8f701ceb33cca11d02ea29a24659 (patch)
tree6427ed58b3b1e44970593e6ba556c6e1403ed453
parent30017c36d6b5e3382ee7cf018d330a6a4a937d39 (diff)
downloadrust-79d30067f3bc8f701ceb33cca11d02ea29a24659.tar.gz
rust-79d30067f3bc8f701ceb33cca11d02ea29a24659.zip
cleanup: make run-make test use run_in_tmpdir
We had an issue on our LLVM-head Rust builder where it got stuck with
this test failing because it was reusing the tmpdir between runs and
something broke the incremental compile. Everything seems to work fine
with run_in_tmpdir in this test. tests/run-make/uefi-qemu also uses the
same tmpdir across runs, but I don't have the right environment to test
that so I didn't try fixing it. That is the only use of
std::env::temp_dir left in run-make tests after this fix.
-rw-r--r--tests/run-make/rustdoc-scrape-examples-paths/rmake.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/tests/run-make/rustdoc-scrape-examples-paths/rmake.rs b/tests/run-make/rustdoc-scrape-examples-paths/rmake.rs
index 03888f69eab..6784e438762 100644
--- a/tests/run-make/rustdoc-scrape-examples-paths/rmake.rs
+++ b/tests/run-make/rustdoc-scrape-examples-paths/rmake.rs
@@ -1,16 +1,16 @@
 //! Test to ensure that the rustdoc `scrape-examples` feature is not panicking.
 //! Regression test for <https://github.com/rust-lang/rust/issues/144752>.
 
-use run_make_support::{cargo, path, rfs};
+use run_make_support::cargo;
+use run_make_support::scoped_run::run_in_tmpdir;
 
 fn main() {
     // We copy the crate to be documented "outside" to prevent documenting
     // the whole compiler.
-    let tmp = std::env::temp_dir();
-    let test_crate = tmp.join("foo");
-    rfs::copy_dir_all(path("foo"), &test_crate);
-
-    // The `scrape-examples` feature is also implemented in `cargo` so instead of reproducing
-    // what `cargo` does, better to just let `cargo` do it.
-    cargo().current_dir(&test_crate).args(["doc", "-p", "foo", "-Zrustdoc-scrape-examples"]).run();
+    std::env::set_current_dir("foo").unwrap();
+    run_in_tmpdir(|| {
+        // The `scrape-examples` feature is also implemented in `cargo` so instead of reproducing
+        // what `cargo` does, better to just let `cargo` do it.
+        cargo().args(["doc", "-p", "foo", "-Zrustdoc-scrape-examples"]).run();
+    })
 }