Fix false positive with missing_docs and #[test]

Since #130025, the compiler don't ignore missing_docs when compiling the tests.
But there is now a false positive warning for every `#[test]`

For example, this code
```rust
//! Crate docs

fn just_a_test() {}
```

Would emit this warning when running `cargo test`

```
warning: missing documentation for a constant
 --> src/lib.rs:5:1
  |
4 | #[test]
  | ------- in this procedural macro expansion
5 | fn just_a_test() {}
  | ^^^^^^^^^^^^^^^^^^^
```
This commit is contained in:
Olivier Goffart 2024-09-11 10:35:02 +02:00
parent 4c5fc2c334
commit 6eddbb704e
3 changed files with 8 additions and 0 deletions

View file

@ -277,6 +277,8 @@ pub(crate) fn expand_test_or_bench(
cx.attr_nested_word(sym::cfg, sym::test, attr_sp),
// #[rustc_test_marker = "test_case_sort_key"]
cx.attr_name_value_str(sym::rustc_test_marker, test_path_symbol, attr_sp),
// #[allow(missing_docs)]
cx.attr_nested_word(sym::allow, sym::missing_docs, attr_sp),
],
// const $ident: test::TestDescAndFn =
ast::ItemKind::Const(