let crate_def_map = db.crate_def_map(self.id.krate);
crate_def_map.add_diagnostics(db.upcast(), self.id.local_id, sink);
for decl in self.declarations(db) {
- decl.diagnostics(db, sink);
-
match decl {
crate::ModuleDef::Function(f) => f.diagnostics(db, sink),
crate::ModuleDef::Module(m) => {
m.diagnostics(db, sink)
}
}
- _ => (),
+ _ => {
+ decl.diagnostics(db, sink);
+ }
}
}
"#,
);
}
+
+ #[test]
+ fn test_single_incorrect_case_diagnostic_in_function_name_issue_6970() {
+ let input = r#"fn FOO<|>() {}"#;
+ let expected = r#"fn foo() {}"#;
+
+ let (analysis, file_position) = fixture::position(input);
+ let diagnostics =
+ analysis.diagnostics(&DiagnosticsConfig::default(), file_position.file_id).unwrap();
+ assert_eq!(diagnostics.len(), 1);
+
+ check_fixes(input, expected);
+ }
}