objectionary / objectionary/lints
Unable to cover LtUnlintNonExistingDefect due to hand-written JUnit cases in LtUnlintNonExistingDefectTest
@volodya-lombrozo is already working on this.
Since Sep 4, 2026.
- Dominant language
- Java
- Stars
- 14
- Forks
- 39
- Avg merge
- 22h 54m
- Merged PRs (30d)
- 90
Description
I cannot cover LtUnlintNonExistingDefect through LtByXslTest's pack infrastructure because LtUnlintNonExistingDefectTest still hand-constructs new LtUnlintNonExistingDefect(lints, excluded) in Java for every scenario, the same gap we already closed for LtUnlint in objectionary/lints#1347.
LtUnlintNonExistingDefect is registered in production PkMono under lint: unlint-non-existing-defect, so most of the 12 cases — the ones built on LtAsciiOnly and aliases/alias-too-long fixtures — should convert directly to lint: unlint-non-existing-defect packs with input: EO source. The two cases using the private Boom lint (doesNotRunLintsWithoutUnlints, doesNotInvokeUnreferencedLint) stay hand-written JUnit — Boom only exists to prove an unreferenced lint is never invoked, and it isn't registered in production PkMono, so a pack can't reach it (same reasoning as LtAlways in #1347).
Several of the .eo fixtures this test currently uses (unlint-ascii-only-no-defect.eo, unlint-ascii-only-duplicate.eo, unlint-ascii-only-wrong-line.eo, unlint-ascii-only-out-range.eo, unlint-ascii-only-absent.eo) already violate the current EO grammar — mid-file comments and missing blank lines the parser now rejects — the same class of problem we hit converting LtUnlintTest. These will need rewriting as valid EO, not a literal copy-paste into input:.
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.