Add unit tests for KnownProperties#435
Conversation
|
Thank you for your contribution @vasiliy-mikhailov! Curious, what made you do this work? Was there an edge case that you had experienced when using CDM? Also, have you considered increasing the COVEREDRATIO and decreasing the MISSEDCOUNT to see if there is an improvement experienced with your additional tests coverage? Also, please understand that beginning the |
bea7a48 to
799c040
Compare
|
Thanks @msmygit! No specific production edge case — I was strengthening test coverage on classes where the existing suite executed the code but did not fully assert on its behaviour (mutation-testing-guided), so these are regression-pinning characterization tests for |
|
@vasiliy-mikhailov yes, please adjust to the levels we could improve them on this PR!
|
|
Thanks @msmygit! Done. I tightened the BUNDLE gate to lock in the coverage these tests add:
Those are the levels the suite now clears (measured INSTRUCTION 54.1%, COMPLEXITY 0.437, LINE missed 1475 under JDK 17), so the gate ratchets up while staying green. Verified with a full build (605 tests pass). |
Additive unit tests only - no existing test or production code changed. Signed-off-by: vasiliy-mikhailov <vasiliy-mikhailov@users.noreply.github.com>
INSTRUCTION 45% to 53%, COMPLEXITY 0.33 to 0.42, LINE missed 1500 to 1490; verified green (605 tests).
3457ee8 to
34b7694
Compare
|
@all-contributors please add @vasiliy-mikhailov to test |
|
I've put up a pull request to add @vasiliy-mikhailov! 🎉 |
Additive unit tests for
KnownProperties— edge cases and current behavior pinned with explicit assertions. No existing test or production code changed (append-only).Verified green under Java 11 (
mvn -pl . test -Dtest=KnownPropertiesTest→ Tests run: 41, Failures: 0, Errors: 0). On this class the additions raise line coverage from 200 to 200/201 lines and the PIT mutation kill-rate from 97 to 102 mutants.How this was produced
This PR was generated with an AI-assisted pipeline built around mutation testing (PIT). The pipeline mutates the target class (flipping conditions and changing boundary/edge cases) and runs the existing tests against each mutant. Where a mutant survives (the existing tests do not catch that edge case), it writes a focused test for that case and reruns PIT to confirm the new test actually kills that specific mutant. So every added test is verified to catch a concrete edge case the suite missed before, rather than being speculative or redundant. The change is additive only (no production code modified), and the module builds green under its CI JDK.