Files
rust/tests/ui/manual_ignore_case_cmp.rs

157 lines
5.1 KiB
Rust
Raw Normal View History

2024-09-02 02:20:35 -04:00
#![allow(clippy::all)]
#![deny(clippy::manual_ignore_case_cmp)]
use std::ffi::{OsStr, OsString};
fn main() {}
fn variants(a: &str, b: &str) {
if a.to_ascii_lowercase() == b.to_ascii_lowercase() {
2025-02-12 23:44:38 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
return;
}
if a.to_ascii_uppercase() == b.to_ascii_uppercase() {
2025-02-12 23:44:38 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
return;
}
let r = a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
let r = r || a.to_ascii_uppercase() == b.to_ascii_uppercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
r && a.to_ascii_lowercase() == b.to_uppercase().to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
// !=
if a.to_ascii_lowercase() != b.to_ascii_lowercase() {
2025-02-12 23:44:38 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
return;
}
if a.to_ascii_uppercase() != b.to_ascii_uppercase() {
2025-02-12 23:44:38 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
return;
}
let r = a.to_ascii_lowercase() != b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
let r = r || a.to_ascii_uppercase() != b.to_ascii_uppercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
r && a.to_ascii_lowercase() != b.to_uppercase().to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn unsupported(a: char, b: char) {
// TODO:: these are rare, and might not be worth supporting
a.to_ascii_lowercase() == char::to_ascii_lowercase(&b);
char::to_ascii_lowercase(&a) == b.to_ascii_lowercase();
char::to_ascii_lowercase(&a) == char::to_ascii_lowercase(&b);
}
fn char(a: char, b: char) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == *&b.to_ascii_lowercase();
*&a.to_ascii_lowercase() == b.to_ascii_lowercase();
a.to_ascii_lowercase() == 'a';
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
'a' == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn u8(a: u8, b: u8) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == b'a';
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b'a' == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_str(a: &str, b: &str) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_uppercase().to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_ref_str(a: &&str, b: &&str) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_uppercase().to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn string(a: String, b: String) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
&a.to_ascii_lowercase() == &b.to_ascii_lowercase();
&&a.to_ascii_lowercase() == &&b.to_ascii_lowercase();
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_string(a: String, b: &String) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn string_ref_str(a: String, b: &str) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
a.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == "a";
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
"a" == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_u8slice(a: &[u8], b: &[u8]) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn u8vec(a: Vec<u8>, b: Vec<u8>) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_u8vec(a: Vec<u8>, b: &Vec<u8>) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_osstr(a: &OsStr, b: &OsStr) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn osstring(a: OsString, b: OsString) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}
fn ref_osstring(a: OsString, b: &OsString) {
a.to_ascii_lowercase() == b.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
b.to_ascii_lowercase() == a.to_ascii_lowercase();
2025-02-11 17:57:08 +01:00
//~^ manual_ignore_case_cmp
2024-09-02 02:20:35 -04:00
}