From 2bfff320bd7e0714fd70a7d8e4c2081a697180d5 Mon Sep 17 00:00:00 2001 From: Jakub Beránek Date: Wed, 20 Aug 2025 20:46:54 +0200 Subject: Add some compiletest suites snapshot tests --- src/bootstrap/src/core/build_steps/test.rs | 13 +-- src/bootstrap/src/core/builder/tests.rs | 155 +++++++++++++++++++++++------ 2 files changed, 133 insertions(+), 35 deletions(-) (limited to 'src') diff --git a/src/bootstrap/src/core/build_steps/test.rs b/src/bootstrap/src/core/build_steps/test.rs index f6a912f3190..e61be236c02 100644 --- a/src/bootstrap/src/core/build_steps/test.rs +++ b/src/bootstrap/src/core/build_steps/test.rs @@ -1476,12 +1476,6 @@ macro_rules! test { }), }) } - - fn metadata(&self) -> Option { - Some( - StepMetadata::test(stringify!($name), self.target) - ) - } } }; } @@ -2362,6 +2356,13 @@ HELP: You can add it into `bootstrap.toml` in `rust.codegen-backends = [{name:?} try_run_tests(builder, &mut cmd, false); } } + + fn metadata(&self) -> Option { + Some( + StepMetadata::test(&format!("compiletest-{}", self.suite), self.target) + .stage(self.compiler.stage), + ) + } } /// Runs the documentation tests for a book in `src/doc` using the `rustdoc` of `test_compiler`. diff --git a/src/bootstrap/src/core/builder/tests.rs b/src/bootstrap/src/core/builder/tests.rs index 43e67756e74..e6cf34ed499 100644 --- a/src/bootstrap/src/core/builder/tests.rs +++ b/src/bootstrap/src/core/builder/tests.rs @@ -2062,20 +2062,23 @@ mod snapshot { [build] rustc 0 -> rustc 1 [build] rustc 1 -> std 1 [build] rustc 0 -> Compiletest 1 - [test] Ui - [test] Crashes + [test] compiletest-ui 1 + [test] compiletest-crashes 1 [build] rustc 0 -> CoverageDump 1 + [test] compiletest-coverage 1 + [test] compiletest-coverage 1 [build] rustc 1 -> std 1 - [test] CodegenLlvm - [test] CodegenUnits - [test] AssemblyLlvm - [test] Incremental - [test] Debuginfo - [test] UiFullDeps + [test] compiletest-mir-opt 1 + [test] compiletest-codegen-llvm 1 + [test] compiletest-codegen-units 1 + [test] compiletest-assembly-llvm 1 + [test] compiletest-incremental 1 + [test] compiletest-debuginfo 1 + [test] compiletest-ui-fulldeps 1 [build] rustdoc 1 - [test] Rustdoc - [test] CoverageRunRustdoc - [test] Pretty + [test] compiletest-rustdoc 1 + [test] compiletest-coverage-run-rustdoc 1 + [test] compiletest-pretty 1 [build] rustc 1 -> std 1 [build] rustc 0 -> std 0 [test] rustc 0 -> CrateLibrustc 1 @@ -2113,16 +2116,107 @@ mod snapshot { [test] rustc 0 -> rust-analyzer 1 [build] rustc 0 -> RustdocTheme 1 [test] rustdoc-theme 1 - [test] RustdocUi + [test] compiletest-rustdoc-ui 1 [build] rustc 0 -> JsonDocCk 1 [build] rustc 0 -> JsonDocLint 1 - [test] RustdocJson + [test] compiletest-rustdoc-json 1 [doc] rustc 0 -> rustc 1 [build] rustc 0 -> HtmlChecker 1 [test] html-check [build] rustc 0 -> RunMakeSupport 1 [build] rustc 1 -> cargo 2 - [test] RunMake + [test] compiletest-run-make 1 + "); + } + + #[test] + fn test_compiletest_suites_stage1() { + let ctx = TestCtx::new(); + insta::assert_snapshot!( + ctx.config("test") + .args(&["ui", "ui-fulldeps", "run-make", "rustdoc", "rustdoc-gui", "incremental"]) + .render_steps(), @r" + [build] llvm + [build] rustc 0 -> rustc 1 + [build] rustc 1 -> std 1 + [build] rustc 0 -> Compiletest 1 + [test] compiletest-ui 1 + [test] compiletest-ui-fulldeps 1 + [build] rustc 0 -> RunMakeSupport 1 + [build] rustc 1 -> cargo 2 + [build] rustdoc 1 + [test] compiletest-run-make 1 + [test] compiletest-rustdoc 1 + [build] rustc 0 -> RustdocGUITest 1 + [test] rustdoc-gui 1 + [test] compiletest-incremental 1 + [build] rustc 1 -> rustc 2 + "); + } + + #[test] + fn test_compiletest_suites_stage2() { + let ctx = TestCtx::new(); + insta::assert_snapshot!( + ctx.config("test") + .args(&["ui", "ui-fulldeps", "run-make", "rustdoc", "rustdoc-gui", "incremental"]) + .stage(2) + .render_steps(), @r" + [build] llvm + [build] rustc 0 -> rustc 1 + [build] rustc 1 -> std 1 + [build] rustc 1 -> rustc 2 + [build] rustc 2 -> std 2 + [build] rustc 0 -> Compiletest 1 + [test] compiletest-ui 2 + [build] rustc 2 -> rustc 3 + [test] compiletest-ui-fulldeps 2 + [build] rustc 0 -> RunMakeSupport 1 + [build] rustc 2 -> cargo 3 + [build] rustdoc 2 + [test] compiletest-run-make 2 + [test] compiletest-rustdoc 2 + [build] rustc 0 -> RustdocGUITest 1 + [test] rustdoc-gui 2 + [test] compiletest-incremental 2 + [build] rustdoc 1 + "); + } + + #[test] + fn test_compiletest_suites_stage2_cross() { + let ctx = TestCtx::new(); + insta::assert_snapshot!( + ctx.config("test") + .hosts(&[TEST_TRIPLE_1]) + .targets(&[TEST_TRIPLE_1]) + .args(&["ui", "ui-fulldeps", "run-make", "rustdoc", "rustdoc-gui", "incremental"]) + .stage(2) + .render_steps(), @r" + [build] llvm + [build] rustc 0 -> rustc 1 + [build] rustc 1 -> std 1 + [build] rustc 1 -> rustc 2 + [build] rustc 2 -> std 2 + [build] rustc 0 -> Compiletest 1 + [build] rustc 1 -> std 1 + [build] rustc 2 -> std 2 + [test] compiletest-ui 2 + [build] llvm + [build] rustc 2 -> rustc 3 + [test] compiletest-ui-fulldeps 2 + [build] rustc 0 -> RunMakeSupport 1 + [build] rustc 2 -> cargo 3 + [build] rustdoc 2 + [test] compiletest-run-make 2 + [test] compiletest-rustdoc 2 + [build] rustc 0 -> RustdocGUITest 1 + [test] rustdoc-gui 2 + [test] compiletest-incremental 2 + [build] rustc 1 -> rustc 2 + [build] rustdoc 1 + [build] rustc 2 -> std 2 + [build] rustdoc 2 "); } @@ -2142,21 +2236,24 @@ mod snapshot { [build] rustc 1 -> rustc 2 [build] rustc 2 -> std 2 [build] rustc 0 -> Compiletest 1 - [test] Ui - [test] Crashes + [test] compiletest-ui 2 + [test] compiletest-crashes 2 [build] rustc 0 -> CoverageDump 1 + [test] compiletest-coverage 2 + [test] compiletest-coverage 2 [build] rustc 2 -> std 2 - [test] CodegenLlvm - [test] CodegenUnits - [test] AssemblyLlvm - [test] Incremental - [test] Debuginfo + [test] compiletest-mir-opt 2 + [test] compiletest-codegen-llvm 2 + [test] compiletest-codegen-units 2 + [test] compiletest-assembly-llvm 2 + [test] compiletest-incremental 2 + [test] compiletest-debuginfo 2 [build] rustc 2 -> rustc 3 - [test] UiFullDeps + [test] compiletest-ui-fulldeps 2 [build] rustdoc 2 - [test] Rustdoc - [test] CoverageRunRustdoc - [test] Pretty + [test] compiletest-rustdoc 2 + [test] compiletest-coverage-run-rustdoc 2 + [test] compiletest-pretty 2 [build] rustc 2 -> std 2 [build] rustc 1 -> std 1 [build] rustdoc 1 @@ -2196,16 +2293,16 @@ mod snapshot { [test] rustc 1 -> lint-docs 2 [build] rustc 0 -> RustdocTheme 1 [test] rustdoc-theme 2 - [test] RustdocUi + [test] compiletest-rustdoc-ui 2 [build] rustc 0 -> JsonDocCk 1 [build] rustc 0 -> JsonDocLint 1 - [test] RustdocJson + [test] compiletest-rustdoc-json 2 [doc] rustc 1 -> rustc 2 [build] rustc 0 -> HtmlChecker 1 [test] html-check [build] rustc 0 -> RunMakeSupport 1 [build] rustc 2 -> cargo 3 - [test] RunMake + [test] compiletest-run-make 2 "); } @@ -2249,7 +2346,7 @@ mod snapshot { let steps = ctx.config("test").args(&["--skip", "src/tools/tidy"]).get_steps(); let host = TargetSelection::from_user(&host_target()); - steps.assert_contains(StepMetadata::test("RustdocUi", host)); + steps.assert_contains(StepMetadata::test("compiletest-rustdoc-ui", host).stage(1)); steps.assert_not_contains(test::Tidy); } -- cgit 1.4.1-3-g733a5