Add little `is_test_crate` function
Ok, this is quite a story.
I'm mainly a Clippy contributor, so I was fixing [this Clippy issue](https://github.com/rust-lang/rust-clippy/pull/10584) about a lint having to ignore test modules but that wasn't ignoring test files (integration test, `test/` dirs and such).
As test **files** don't tend to have an inner `#[cfg(test)]` module inside them, I tried everything, looking for filenames, looking for item's parents in the HIR Map, doing black magic...
I even asked [on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/.E2.9C.94.20Checking.20if.20file.20is.20integration.20test), and jyn answered something about `--cfg test`. Aha! That's something that I might be looking for, so I started looking at `rustc_driver_impl` flag parsing and configuration and all that.
Then, I stumbled on [this function right here](
|
||
|---|---|---|
| .. | ||
| diagnostics | ||
| late | ||
| build_reduced_graph.rs | ||
| check_unused.rs | ||
| def_collector.rs | ||
| diagnostics.rs | ||
| effective_visibilities.rs | ||
| errors.rs | ||
| ident.rs | ||
| imports.rs | ||
| late.rs | ||
| lib.rs | ||
| macros.rs | ||
| rustdoc.rs | ||