On Wed, 13 Sep 2023 14:25:19 GMT, Alexey Ivanov <aiva...@openjdk.org> wrote:

>> This enhances the `Builder` pattern added in 
>> [JDK-8294535](https://bugs.openjdk.org/browse/JDK-8294535) with a new method 
>> `testUI` which allows passing a lambda expression or a method reference to 
>> create *the test UI window*.
>> 
>> The `PassFailJFrame` will automatically call the method on the EDT to create 
>> the UI, add it to the internal list of windows, install the window closing 
>> listener and finally position and show both the instructions and test UI.
>> 
>> Alternatively, you can pass an already created window.
>> 
>> The `main` method of a manual test could look as simple as a sequence of 
>> calls:
>> 
>> 
>>     public static void main(String[] args) throws Exception {
>>         PassFailJFrame.builder()
>>                       .instructions(INSTRUCTIONS)
>>                       .testUI(() -> createTestUI())
>>                       .build()
>>                       .awaitAndCheck();
>>     }
>> 
>> where `createTestUI` returns a test UI window.
>
> Alexey Ivanov has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   8294156: Allow creating several test windows
>   
>   The windows can be positioned in advance, or
>   a call back PositionWindows interface can be used
>   to define their positions after the instruction UI
>   frame is positioned on the screen.

I submitted an enhancement 
[JDK-8317116](https://bugs.openjdk.org/browse/JDK-8317116): _Provide layouts 
for multiple test UI in `PassFailJFrame`_.

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

PR Comment: https://git.openjdk.org/jdk/pull/15665#issuecomment-1737766845

Reply via email to