Don't use exact definition of std's ErrorKind in test.

Every time we add something to this enum in std, this test breaks.
This commit is contained in:
Mara Bos 2021-06-26 14:50:42 +02:00
parent 8d427b624f
commit 3e59563394
4 changed files with 37 additions and 8 deletions

View File

@ -0,0 +1,23 @@
#[non_exhaustive]
pub enum ErrorKind {
NotFound,
PermissionDenied,
ConnectionRefused,
ConnectionReset,
ConnectionAborted,
NotConnected,
AddrInUse,
AddrNotAvailable,
BrokenPipe,
AlreadyExists,
WouldBlock,
InvalidInput,
InvalidData,
TimedOut,
WriteZero,
Interrupted,
Other,
UnexpectedEof,
Unsupported,
OutOfMemory,
}

View File

@ -1,4 +1,5 @@
// run-rustfix
// aux-build:non-exhaustive-enum.rs
#![deny(clippy::wildcard_enum_match_arm)]
#![allow(
@ -11,7 +12,9 @@
clippy::diverging_sub_expression
)]
use std::io::ErrorKind;
extern crate non_exhaustive_enum;
use non_exhaustive_enum::ErrorKind;
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
enum Color {

View File

@ -1,4 +1,5 @@
// run-rustfix
// aux-build:non-exhaustive-enum.rs
#![deny(clippy::wildcard_enum_match_arm)]
#![allow(
@ -11,7 +12,9 @@
clippy::diverging_sub_expression
)]
use std::io::ErrorKind;
extern crate non_exhaustive_enum;
use non_exhaustive_enum::ErrorKind;
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
enum Color {

View File

@ -1,35 +1,35 @@
error: wildcard match will also match any future added variants
--> $DIR/wildcard_enum_match_arm.rs:39:9
--> $DIR/wildcard_enum_match_arm.rs:42:9
|
LL | _ => eprintln!("Not red"),
| ^ help: try this: `Color::Green | Color::Blue | Color::Rgb(..) | Color::Cyan`
|
note: the lint level is defined here
--> $DIR/wildcard_enum_match_arm.rs:3:9
--> $DIR/wildcard_enum_match_arm.rs:4:9
|
LL | #![deny(clippy::wildcard_enum_match_arm)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: wildcard match will also match any future added variants
--> $DIR/wildcard_enum_match_arm.rs:43:9
--> $DIR/wildcard_enum_match_arm.rs:46:9
|
LL | _not_red => eprintln!("Not red"),
| ^^^^^^^^ help: try this: `_not_red @ Color::Green | _not_red @ Color::Blue | _not_red @ Color::Rgb(..) | _not_red @ Color::Cyan`
error: wildcard match will also match any future added variants
--> $DIR/wildcard_enum_match_arm.rs:47:9
--> $DIR/wildcard_enum_match_arm.rs:50:9
|
LL | not_red => format!("{:?}", not_red),
| ^^^^^^^ help: try this: `not_red @ Color::Green | not_red @ Color::Blue | not_red @ Color::Rgb(..) | not_red @ Color::Cyan`
error: wildcard match will also match any future added variants
--> $DIR/wildcard_enum_match_arm.rs:63:9
--> $DIR/wildcard_enum_match_arm.rs:66:9
|
LL | _ => "No red",
| ^ help: try this: `Color::Red | Color::Green | Color::Blue | Color::Rgb(..) | Color::Cyan`
error: wildcard matches known variants and will also match future added variants
--> $DIR/wildcard_enum_match_arm.rs:80:9
--> $DIR/wildcard_enum_match_arm.rs:83:9
|
LL | _ => {},
| ^ help: try this: `ErrorKind::PermissionDenied | ErrorKind::ConnectionRefused | ErrorKind::ConnectionReset | ErrorKind::ConnectionAborted | ErrorKind::NotConnected | ErrorKind::AddrInUse | ErrorKind::AddrNotAvailable | ErrorKind::BrokenPipe | ErrorKind::AlreadyExists | ErrorKind::WouldBlock | ErrorKind::InvalidInput | ErrorKind::InvalidData | ErrorKind::TimedOut | ErrorKind::WriteZero | ErrorKind::Interrupted | ErrorKind::Other | ErrorKind::UnexpectedEof | ErrorKind::Unsupported | ErrorKind::OutOfMemory | _`