Uh oh!
There was an error while loading. Please reload this page.
Add a jupiter-tests target to run JUnit 5 tests - #235
Open
slachiewicz wants to merge 1 commit into
Open
Conversation
The junit task cannot run Jupiter tests, so there is nowhere to put one today. This adds a junitlauncher target beside the existing run and a selector naming the JUnit 5 tests, used by both so the two runners cannot pick up the same class. UnicodeUtilTest moves across as the first one, to prove the target runs. Reports go to their own directory; junitreport still aggregates only the junit task's XML, so nothing about the existing reporting changes.
slachiewicz
marked this pull request as ready for review
August 22, 2026 21:07
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
There is currently nowhere to put a JUnit 5 test: the
junittask cannot runJupiter, and
junitlauncheris only exercised by the tests ofjunitlauncher.This adds a
jupiter-teststarget beside the existing run, so a Jupiter test canbe written and will actually execute.
It is deliberately additive. The 356 existing test classes stay on the
junittask,
junitreportstill aggregates only that task's XML, and the new targetwrites its reports elsewhere. Nothing about the current reporting changes.
A single
selectornames the JUnit 5 tests. Thejunitbatch excludes it andjupiter-testsincludes it, so the two runners cannot pick up the same class andthe list cannot drift out of step.
UnicodeUtilTestmoves across as the firstone — otherwise the target would run nothing and silently keep passing.
Failures reuse
junit.failed, socheck-failedandtestfail the build exactlyas they already do.
legacy-plainwrites only to files, so the target prints thefailing reports; the fileset selects nothing when the run passed.
Why not switch the runner outright
That was the original intent, and it looks blocked. The
junitrun feedsjunitreport, which would mean moving to thelegacy-xmllistener — the subjectof 69683, 69685, 69687 and 69707, two of which report that
junitreportcannotcorrectly read what that listener writes. Switching wholesale would regress this
project's own test reporting. Those look worth fixing first; this target needs
none of them.
errorpropertyalso has nojunitlauncherequivalent (70175), though it does notmatter here since both properties already map to
junit.failed.Verified
ant jupiter-tests→Tests run: 1, Failures: 0.ant junit-batch -Djunit.includes="**/UnicodeUtilTest.java"→ not picked up bythe
junittask; the same command withSymlinkUtilsTestdoes run it, so theexclusion is doing the work rather than the batch running empty.
junit.failed→tests.failed→failfires.This change was created with AI assistance.