diff --git a/src/tests/best-practices.md b/src/tests/best-practices.md index ce781d80b..6905ee132 100644 --- a/src/tests/best-practices.md +++ b/src/tests/best-practices.md @@ -17,7 +17,8 @@ test that makes the life of another contributor as hard as possible. > > To make the life of another contributor as hard as possible, one might: > -> - Only name the test after an issue, e.g. `issue-123456.rs`. +> - Name the test after an issue number alone without any other context, e.g. +> `issue-123456.rs`. > - Have no comments at all on what the test is trying to exercise, no links to > relevant context. > - Include a test that is massive (that can otherwise be minimized) and @@ -40,23 +41,28 @@ related tests. - Name the test after what it's trying to exercise or prevent regressions of. - Keep it concise. -- Avoid including issue numbers in test names. +- Avoid using issue numbers alone as test names. +- Avoid starting the test name with `issue-xxxxx` prefix as it degrades + auto-completion. -> **Avoid issue numbers in test names** +> **Avoid using only issue numbers as test names** > -> Prefer including them as links or `#123456` in test comments instead. +> Prefer including them as links or `#123456` in test comments instead. Or if it +> makes sense to include the issue number, also include brief keywords like +> `macro-external-span-ice-123956.rs`. > > ```text > tests/ui/typeck/issue-123456.rs // bad -> tests/ui/typeck/issue-123456-asm-macro-external-span-ice.rs // bad +> tests/ui/typeck/issue-123456-asm-macro-external-span-ice.rs // bad (for tab completion) +> tests/ui/typeck/asm-macro-external-span-ice-123456.rs // good > tests/ui/typeck/asm-macro-external-span-ice.rs // good > ``` > > `issue-123456.rs` does not tell you immediately anything about what the test > is actually exercising meaning you need to do additional searching. Including -> the issue number in the test name is really noisy for finding relevant tests -> by what they're exercising (if you `ls` a test directory and get a bunch of -> `issue-xxxxx` prefixes). We can link to the issue in a test comment. +> the issue number in the test name as a prefix makes tab completion less useful +> (if you `ls` a test directory and get a bunch of `issue-xxxxx` prefixes). We +> can link to the issue in a test comment. > > ```rs > //! Check that `asm!` macro including nested macros that come from external