On Fri, 15 Mar 2024 04:40:35 GMT, Alexander Zvegintsev <azveg...@openjdk.org> 
wrote:

>> Often manual tests have a text area in the instruction window to print 
>> feedback from the test to be evaluated by a tester.
>> I stumbled across another test that needed this, so I decided to make these 
>> changes a standard feature.
>> 
>> List of changes:
>> * The log text area can be added below the `Pass` and `Fail` buttons panel.
>> To do this, use the builder methods `logArea()`, `logArea(int rows)`.
>> * `PassFailJFrame.log(message)`, `PassFailJFrame.logClear()` and 
>> `PassFailJFrame.logSet()` are added to control this text area. (maybe I 
>> missed something?)
>> * added `invokeOnEDTUncheckedException` for easier use of logging methods
>> 
>> So typical usage would be like:
>> 
>>         PassFailJFrame
>>                 .builder()
>>                 .title("GetBoundsResizeTest Instructions")
>>                 .instructions(INSTRUCTIONS)
>>                 .rows(20)
>>                 .columns(70)
>>                 .logArea()
>>                 .build()
>>                 .awaitAndCheck();
>> 
>> 
>> ----
>> 
>> //somewhere in event handlers:
>> PassFailJFrame.log("Very important message");
>
> test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 406:
> 
>> 404:                                            rows, columns,
>> 405:                                            enableScreenCapture,
>> 406:                                            false, 0),
> 
> It is intentionally added only to the builder to avoid excessive changes to 
> all constructors.
> 
> It seems that the builder produces much cleaner code, so we probably 
> shouldn't spend our time to changing a bunch of `PassFailJFrame` 
> constructors, and at some point we can make the builder the only option 
> available.

Right. We should deprecate all the constructors, or rather remove them 
altogether and update tests which use them. At this moment, there are 32 tests 
which use `PassFailJFrame` constructors explicitly.

I submitted [JDK-8328274](https://bugs.openjdk.org/browse/JDK-8328274): _Remove 
PassFailJFrame constructors in favour of Builder_.

Feel free to re-assign and implement it.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/18319#discussion_r1526267646

Reply via email to