mirror of
https://github.com/rust-lang/rust.git
synced 2025-10-02 18:27:37 +00:00
31 lines
898 B
Rust
31 lines
898 B
Rust
#![feature(rustc_private)]
|
|
|
|
// This test checks that all lints defined in `clippy_config::conf` in `#[lints]`
|
|
// attributes exist as Clippy lints.
|
|
//
|
|
// This test is a no-op if run as part of the compiler test suite
|
|
// and will always succeed.
|
|
|
|
use std::collections::HashSet;
|
|
|
|
#[test]
|
|
fn config_consistency() {
|
|
if option_env!("RUSTC_TEST_SUITE").is_some() {
|
|
return;
|
|
}
|
|
|
|
let lint_names: HashSet<String> = clippy_lints::declared_lints::LINTS
|
|
.iter()
|
|
.map(|lint_info| lint_info.lint.name.strip_prefix("clippy::").unwrap().to_lowercase())
|
|
.collect();
|
|
for conf in clippy_config::get_configuration_metadata() {
|
|
for lint in conf.lints {
|
|
assert!(
|
|
lint_names.contains(*lint),
|
|
"Configuration option {} references lint `{lint}` which does not exist",
|
|
conf.name
|
|
);
|
|
}
|
|
}
|
|
}
|