mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-27 15:11:30 +00:00
Split eq_op
ui tests to avoid file limit error in CI
This commit is contained in:
parent
5a13217ea9
commit
16b5f37b5a
4 changed files with 152 additions and 151 deletions
|
@ -60,8 +60,6 @@ fn main() {
|
|||
const B: u32 = 10;
|
||||
const C: u32 = A / B; // ok, different named constants
|
||||
const D: u32 = A / A;
|
||||
|
||||
check_assert_identical_args();
|
||||
}
|
||||
|
||||
#[rustfmt::skip]
|
||||
|
@ -87,58 +85,3 @@ fn check_ignore_macro() {
|
|||
// checks if the lint ignores macros with `!` operator
|
||||
!bool_macro!(1) && !bool_macro!("");
|
||||
}
|
||||
|
||||
macro_rules! assert_in_macro_def {
|
||||
() => {
|
||||
let a = 42;
|
||||
assert_eq!(a, a);
|
||||
assert_ne!(a, a);
|
||||
debug_assert_eq!(a, a);
|
||||
debug_assert_ne!(a, a);
|
||||
};
|
||||
}
|
||||
|
||||
// lint identical args in assert-like macro invocations (see #3574)
|
||||
fn check_assert_identical_args() {
|
||||
// lint also in macro definition
|
||||
assert_in_macro_def!();
|
||||
|
||||
let a = 1;
|
||||
let b = 2;
|
||||
|
||||
// lint identical args in `assert_eq!`
|
||||
assert_eq!(a, a);
|
||||
assert_eq!(a + 1, a + 1);
|
||||
// ok
|
||||
assert_eq!(a, b);
|
||||
assert_eq!(a, a + 1);
|
||||
assert_eq!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `assert_ne!`
|
||||
assert_ne!(a, a);
|
||||
assert_ne!(a + 1, a + 1);
|
||||
// ok
|
||||
assert_ne!(a, b);
|
||||
assert_ne!(a, a + 1);
|
||||
assert_ne!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `debug_assert_eq!`
|
||||
debug_assert_eq!(a, a);
|
||||
debug_assert_eq!(a + 1, a + 1);
|
||||
// ok
|
||||
debug_assert_eq!(a, b);
|
||||
debug_assert_eq!(a, a + 1);
|
||||
debug_assert_eq!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `debug_assert_ne!`
|
||||
debug_assert_ne!(a, a);
|
||||
debug_assert_ne!(a + 1, a + 1);
|
||||
// ok
|
||||
debug_assert_ne!(a, b);
|
||||
debug_assert_ne!(a, a + 1);
|
||||
debug_assert_ne!(a + 1, b + 1);
|
||||
|
||||
let my_vec = vec![1; 5];
|
||||
let mut my_iter = my_vec.iter();
|
||||
assert_ne!(my_iter.next(), my_iter.next());
|
||||
}
|
||||
|
|
|
@ -162,98 +162,5 @@ error: equal expressions as operands to `/`
|
|||
LL | const D: u32 = A / A;
|
||||
| ^^^^^
|
||||
|
||||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:94:20
|
||||
|
|
||||
LL | assert_eq!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: `#[deny(clippy::eq_op)]` on by default
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:95:20
|
||||
|
|
||||
LL | assert_ne!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:110:16
|
||||
|
|
||||
LL | assert_eq!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:111:16
|
||||
|
|
||||
LL | assert_eq!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:118:16
|
||||
|
|
||||
LL | assert_ne!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:119:16
|
||||
|
|
||||
LL | assert_ne!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:96:26
|
||||
|
|
||||
LL | debug_assert_eq!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:97:26
|
||||
|
|
||||
LL | debug_assert_ne!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:126:22
|
||||
|
|
||||
LL | debug_assert_eq!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op.rs:127:22
|
||||
|
|
||||
LL | debug_assert_eq!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:134:22
|
||||
|
|
||||
LL | debug_assert_ne!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op.rs:135:22
|
||||
|
|
||||
LL | debug_assert_ne!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 39 previous errors
|
||||
error: aborting due to 27 previous errors
|
||||
|
||||
|
|
56
tests/ui/eq_op_macros.rs
Normal file
56
tests/ui/eq_op_macros.rs
Normal file
|
@ -0,0 +1,56 @@
|
|||
#![warn(clippy::eq_op)]
|
||||
|
||||
// lint also in macro definition
|
||||
macro_rules! assert_in_macro_def {
|
||||
() => {
|
||||
let a = 42;
|
||||
assert_eq!(a, a);
|
||||
assert_ne!(a, a);
|
||||
debug_assert_eq!(a, a);
|
||||
debug_assert_ne!(a, a);
|
||||
};
|
||||
}
|
||||
|
||||
// lint identical args in assert-like macro invocations (see #3574)
|
||||
fn main() {
|
||||
assert_in_macro_def!();
|
||||
|
||||
let a = 1;
|
||||
let b = 2;
|
||||
|
||||
// lint identical args in `assert_eq!`
|
||||
assert_eq!(a, a);
|
||||
assert_eq!(a + 1, a + 1);
|
||||
// ok
|
||||
assert_eq!(a, b);
|
||||
assert_eq!(a, a + 1);
|
||||
assert_eq!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `assert_ne!`
|
||||
assert_ne!(a, a);
|
||||
assert_ne!(a + 1, a + 1);
|
||||
// ok
|
||||
assert_ne!(a, b);
|
||||
assert_ne!(a, a + 1);
|
||||
assert_ne!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `debug_assert_eq!`
|
||||
debug_assert_eq!(a, a);
|
||||
debug_assert_eq!(a + 1, a + 1);
|
||||
// ok
|
||||
debug_assert_eq!(a, b);
|
||||
debug_assert_eq!(a, a + 1);
|
||||
debug_assert_eq!(a + 1, b + 1);
|
||||
|
||||
// lint identical args in `debug_assert_ne!`
|
||||
debug_assert_ne!(a, a);
|
||||
debug_assert_ne!(a + 1, a + 1);
|
||||
// ok
|
||||
debug_assert_ne!(a, b);
|
||||
debug_assert_ne!(a, a + 1);
|
||||
debug_assert_ne!(a + 1, b + 1);
|
||||
|
||||
let my_vec = vec![1; 5];
|
||||
let mut my_iter = my_vec.iter();
|
||||
assert_ne!(my_iter.next(), my_iter.next());
|
||||
}
|
95
tests/ui/eq_op_macros.stderr
Normal file
95
tests/ui/eq_op_macros.stderr
Normal file
|
@ -0,0 +1,95 @@
|
|||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:7:20
|
||||
|
|
||||
LL | assert_eq!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: `-D clippy::eq-op` implied by `-D warnings`
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:8:20
|
||||
|
|
||||
LL | assert_ne!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:22:16
|
||||
|
|
||||
LL | assert_eq!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:23:16
|
||||
|
|
||||
LL | assert_eq!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:30:16
|
||||
|
|
||||
LL | assert_ne!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:31:16
|
||||
|
|
||||
LL | assert_ne!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:9:26
|
||||
|
|
||||
LL | debug_assert_eq!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:10:26
|
||||
|
|
||||
LL | debug_assert_ne!(a, a);
|
||||
| ^^^^
|
||||
...
|
||||
LL | assert_in_macro_def!();
|
||||
| ----------------------- in this macro invocation
|
||||
|
|
||||
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:38:22
|
||||
|
|
||||
LL | debug_assert_eq!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_eq!` macro call
|
||||
--> $DIR/eq_op_macros.rs:39:22
|
||||
|
|
||||
LL | debug_assert_eq!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:46:22
|
||||
|
|
||||
LL | debug_assert_ne!(a, a);
|
||||
| ^^^^
|
||||
|
||||
error: identical args used in this `debug_assert_ne!` macro call
|
||||
--> $DIR/eq_op_macros.rs:47:22
|
||||
|
|
||||
LL | debug_assert_ne!(a + 1, a + 1);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 12 previous errors
|
||||
|
Loading…
Reference in a new issue