Add ui test for check_private_items config

This commit is contained in:
Guillaume Gomez 2023-11-19 15:54:34 +01:00
parent abd9deb9f4
commit 5cdda53e47
3 changed files with 119 additions and 0 deletions

View File

@ -0,0 +1 @@
check-private-items = true

View File

@ -0,0 +1,54 @@
#![deny(
clippy::unnecessary_safety_doc,
clippy::missing_errors_doc,
clippy::missing_panics_doc
)]
/// This is a private function, skip to match behavior with `missing_safety_doc`.
///
/// # Safety
///
/// Boo!
fn you_dont_see_me() {
//~^ ERROR: safe function's docs have unnecessary `# Safety` section
unimplemented!();
}
mod private_mod {
/// This is public but unexported function.
///
/// # Safety
///
/// Very safe!
pub fn only_crate_wide_accessible() -> Result<(), ()> {
//~^ ERROR: safe function's docs have unnecessary `# Safety` section
//~| ERROR: docs for function returning `Result` missing `# Errors` section
unimplemented!();
}
}
pub struct S;
impl S {
/// Private, fine again to stay consistent with `missing_safety_doc`.
///
/// # Safety
///
/// Unnecessary!
fn private(&self) {
//~^ ERROR: safe function's docs have unnecessary `# Safety` section
//~| ERROR: docs for function which may panic missing `# Panics` section
panic!();
}
}
#[doc(hidden)]
pub mod __macro {
pub struct T;
impl T {
pub unsafe fn f() {}
//~^ ERROR: unsafe function's docs miss `# Safety` section
}
}
fn main() {}

View File

@ -0,0 +1,64 @@
error: safe function's docs have unnecessary `# Safety` section
--> $DIR/doc_lints.rs:12:1
|
LL | fn you_dont_see_me() {
| ^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> $DIR/doc_lints.rs:2:5
|
LL | clippy::unnecessary_safety_doc,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: safe function's docs have unnecessary `# Safety` section
--> $DIR/doc_lints.rs:23:5
|
LL | pub fn only_crate_wide_accessible() -> Result<(), ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: docs for function returning `Result` missing `# Errors` section
--> $DIR/doc_lints.rs:23:5
|
LL | pub fn only_crate_wide_accessible() -> Result<(), ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> $DIR/doc_lints.rs:3:5
|
LL | clippy::missing_errors_doc,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
error: safe function's docs have unnecessary `# Safety` section
--> $DIR/doc_lints.rs:38:5
|
LL | fn private(&self) {
| ^^^^^^^^^^^^^^^^^
error: docs for function which may panic missing `# Panics` section
--> $DIR/doc_lints.rs:38:5
|
LL | fn private(&self) {
| ^^^^^^^^^^^^^^^^^
|
note: first possible panic found here
--> $DIR/doc_lints.rs:41:9
|
LL | panic!();
| ^^^^^^^^
note: the lint level is defined here
--> $DIR/doc_lints.rs:4:5
|
LL | clippy::missing_panics_doc
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
error: unsafe function's docs miss `# Safety` section
--> $DIR/doc_lints.rs:49:9
|
LL | pub unsafe fn f() {}
| ^^^^^^^^^^^^^^^^^
|
= note: `-D clippy::missing-safety-doc` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(clippy::missing_safety_doc)]`
error: aborting due to 6 previous errors