mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-27 12:29:21 +00:00
Auto merge of #15736 - rmehri01:15678_module_incorrect_case_diagnostics, r=HKalbasi
fix: add incorrect case diagnostics for module names Adds diagnostics for checking both inline and file module names are snake case. Closes #15678
This commit is contained in:
commit
bd38871a98
4 changed files with 123 additions and 10 deletions
|
@ -111,6 +111,31 @@ fn some_fn() {
|
|||
let what_aweird_formatting = 10;
|
||||
another_func(what_aweird_formatting);
|
||||
}
|
||||
"#,
|
||||
);
|
||||
|
||||
check_fix(
|
||||
r#"
|
||||
static S: i32 = M::A;
|
||||
|
||||
mod $0M {
|
||||
pub const A: i32 = 10;
|
||||
}
|
||||
|
||||
mod other {
|
||||
use crate::M::A;
|
||||
}
|
||||
"#,
|
||||
r#"
|
||||
static S: i32 = m::A;
|
||||
|
||||
mod m {
|
||||
pub const A: i32 = 10;
|
||||
}
|
||||
|
||||
mod other {
|
||||
use crate::m::A;
|
||||
}
|
||||
"#,
|
||||
);
|
||||
}
|
||||
|
@ -518,17 +543,20 @@ fn NonSnakeCaseName(some_var: u8) -> u8 {
|
|||
|
||||
#[deny(nonstandard_style)]
|
||||
mod CheckNonstandardStyle {
|
||||
//^^^^^^^^^^^^^^^^^^^^^ 💡 error: Module `CheckNonstandardStyle` should have snake_case name, e.g. `check_nonstandard_style`
|
||||
fn HiImABadFnName() {}
|
||||
//^^^^^^^^^^^^^^ 💡 error: Function `HiImABadFnName` should have snake_case name, e.g. `hi_im_abad_fn_name`
|
||||
}
|
||||
|
||||
#[deny(warnings)]
|
||||
mod CheckBadStyle {
|
||||
//^^^^^^^^^^^^^ 💡 error: Module `CheckBadStyle` should have snake_case name, e.g. `check_bad_style`
|
||||
struct fooo;
|
||||
//^^^^ 💡 error: Structure `fooo` should have CamelCase name, e.g. `Fooo`
|
||||
}
|
||||
|
||||
mod F {
|
||||
//^ 💡 warn: Module `F` should have snake_case name, e.g. `f`
|
||||
#![deny(non_snake_case)]
|
||||
fn CheckItWorksWithModAttr() {}
|
||||
//^^^^^^^^^^^^^^^^^^^^^^^ 💡 error: Function `CheckItWorksWithModAttr` should have snake_case name, e.g. `check_it_works_with_mod_attr`
|
||||
|
@ -649,4 +677,30 @@ enum E {
|
|||
"#,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn module_name_inline() {
|
||||
check_diagnostics(
|
||||
r#"
|
||||
mod M {
|
||||
//^ 💡 warn: Module `M` should have snake_case name, e.g. `m`
|
||||
mod IncorrectCase {}
|
||||
//^^^^^^^^^^^^^ 💡 warn: Module `IncorrectCase` should have snake_case name, e.g. `incorrect_case`
|
||||
}
|
||||
"#,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn module_name_decl() {
|
||||
check_diagnostics(
|
||||
r#"
|
||||
//- /Foo.rs
|
||||
|
||||
//- /main.rs
|
||||
mod Foo;
|
||||
//^^^ 💡 warn: Module `Foo` should have snake_case name, e.g. `foo`
|
||||
"#,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue