objectionary / objectionary/lints
Conflict between `unit-test-is-not-verb` and `bad-test-name` lints over `can-` prefix in positive test names
@yegor256 is already working on this.
Since Sep 18, 2026.
- Dominant language
- Java
- Stars
- 14
- Forks
- 39
- Avg merge
- 22h 54m
- Merged PRs (30d)
- 90
Description
Two lints in the same jar ask for opposite things about a positive test name. bad-test-name in src/main/resources/org/eolang/lints/tests/bad-test-name.xsl requires it to match ^(can|accepts)-, and LtTestNotVerb hands the same title to Vocabulary.isVerb, which tags it with OpenNLP and accepts it only when the first word is VBZ. can is a modal, tagged MD, so every name the first lint allows in its can- form the second one rejects.
The collision only surfaced in 0.4.9, since MonoLints in 0.4.8 held no reference to LtTestNotVerb and the check never ran. In objectionary/eo it now fires 1972 times against eo-runtime, which is every positive test in the module, and the only spelling that satisfies both lints is accepts-, which reads wrong for most of them: accepts-negate-false is not what the test says.
Either unit-test-is-not-verb should accept the modal that its sibling lint mandates, or the two should agree on one prefix set.
@yegor256
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.