mirror of
https://github.com/rust-lang/rust.git
synced 2024-10-30 14:01:51 +00:00
Rollup merge of #106888 - GuillaumeGomez:tidy-gui-test, r=notriddle
Add tidy check to ensure that rustdoc GUI tests start with a small description The first commit comes from https://github.com/rust-lang/rust/pull/106865 to prevent CI to fail. This PR adds a tidy check to enforce having a small description at the top of the GUI test. Although the format is made to be as easy as possible to read, it's not always obvious what a test is actually checking. I think enforcing this will make it easier for us to come back on these tests if needed. r? `@notriddle`
This commit is contained in:
commit
72180b348b
@ -62,6 +62,7 @@ pub mod features;
|
||||
pub mod mir_opt_tests;
|
||||
pub mod pal;
|
||||
pub mod primitive_docs;
|
||||
pub mod rustdoc_gui_tests;
|
||||
pub mod style;
|
||||
pub mod target_specific_tests;
|
||||
pub mod tests_placement;
|
||||
|
@ -80,6 +80,7 @@ fn main() {
|
||||
check!(debug_artifacts, &tests_path);
|
||||
check!(ui_tests, &tests_path);
|
||||
check!(mir_opt_tests, &tests_path, bless);
|
||||
check!(rustdoc_gui_tests, &tests_path);
|
||||
|
||||
// Checks that only make sense for the compiler.
|
||||
check!(error_codes, &root_path, &[&compiler_path, &librustdoc_path], verbose);
|
||||
|
33
src/tools/tidy/src/rustdoc_gui_tests.rs
Normal file
33
src/tools/tidy/src/rustdoc_gui_tests.rs
Normal file
@ -0,0 +1,33 @@
|
||||
//! Tidy check to ensure that rustdoc GUI tests start with a small description.
|
||||
|
||||
use std::path::Path;
|
||||
|
||||
pub fn check(path: &Path, bad: &mut bool) {
|
||||
crate::walk::walk(
|
||||
&path.join("rustdoc-gui"),
|
||||
&mut |p| {
|
||||
// If there is no extension, it's very likely a folder and we want to go into it.
|
||||
p.extension().map(|e| e != "goml").unwrap_or(false)
|
||||
},
|
||||
&mut |entry, content| {
|
||||
for line in content.lines() {
|
||||
if !line.starts_with("// ") {
|
||||
tidy_error!(
|
||||
bad,
|
||||
"{}: rustdoc-gui tests must start with a small description",
|
||||
entry.path().display(),
|
||||
);
|
||||
return;
|
||||
} else if line.starts_with("// ") {
|
||||
let parts = line[2..].trim();
|
||||
// We ignore tidy comments.
|
||||
if parts.starts_with("// tidy-") {
|
||||
continue;
|
||||
}
|
||||
// All good!
|
||||
return;
|
||||
}
|
||||
}
|
||||
},
|
||||
);
|
||||
}
|
@ -1,3 +1,5 @@
|
||||
// Small test to ensure the "src-line-numbers" element is only present once on
|
||||
// the page.
|
||||
goto: "file://" + |DOC_PATH| + "/test_docs/index.html"
|
||||
click: ".srclink"
|
||||
wait-for: ".src-line-numbers"
|
||||
|
Loading…
Reference in New Issue
Block a user