RFR: 8336332: Rework tests to avoid unrelated stderr output [v4]
Andy Goryachev
angorya at openjdk.org
Wed Sep 17 23:07:14 UTC 2025
On Mon, 15 Sep 2025 19:25:37 GMT, Andy Goryachev <angorya at openjdk.org> wrote:
>> This PR removes unrelated `stderr` output in the headless test logs by redirecting it to an in-memory buffer. Exceptions found in the buffer can be checked against the expected list.
>>
>> In the case when any mismatch is detected, whether the type or the number of exceptions of particular type, the accumulated buffer gets dumped to `stderr` and the test fails.
>>
>> ## How To
>>
>> To redirect stderr and later check the exceptions, surround your code with
>>
>> `OutputRedirect.suppressStderr()` and either `OutputRedirect.checkStderr()` or `OutputRedirect.checkAndRestoreStderr()` (ideally, in the `finally` block).
>>
>> To simply undo redirection, without checking, call `OutputRedirect.restoreStderr()`.
>>
>> To add the check to all the tests in the file, one can call the above mentioned methods inside `@BeforeEach` and `@AfterEach`.
>>
>> ## Changes
>>
>> - added `OutputRedirect` facility
>> - fixed ErrorLoggingUtiltity name
>
> Andy Goryachev has updated the pull request incrementally with one additional commit since the last revision:
>
> moved utility
thanks for suggestions! I'll revert back to DRAFT since there will be more structural changes, then we'll see if we can separate the two PRs or combine them.
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1897#issuecomment-3300257750
More information about the openjfx-dev
mailing list