On Mon, 16 Sep 2024 21:31:58 GMT, Harshitha Onkar <hon...@openjdk.org> wrote:

>> `positionTestUI()` option is added to PassFailJFrame (PFJ).
>> 
>> With this change multiple UI can be positioned using the PFJ new builder 
>> pattern by providing implementation for the Functional Interface 
>> `PositionWindows.positionTestWindows(List<? extends Window> 
>> testWindows,InstructionUI instructionUI)` in the test code. 
>> 
>> Since the position implementation is done in test code it allows flexibility 
>> as the user can add custom positioning code per test UI requirements.
>> 
>> Usage:
>> 
>> PassFailJFrame.builder()
>>                       .title("Test Instructions")
>>                       .instructions(INSTRUCTIONS)
>>                       .rows(int)
>>                       .columns(int)
>>                       .testUI(<TestClass::createAndShowUI>)
>>                       .positionTestUI(<TestClass::positionMultiTestUI>)
>>                       .build()
>>                       .awaitAndCheck();
>> 
>> where positionMultiTestUI is the implementation for positioning of multiple 
>> test windows for `PositionWindows.positionTestWindows(List<? extends Window> 
>> testWindows,InstructionUI instructionUI)`
>> 
>> @aivanov-jdk has demonstrated custom test UI positioning in this PR: 
>> **[8294156: Demo positioning of multiple test 
>> windows](https://github.com/openjdk/jdk/pull/15721)**
>
> Harshitha Onkar has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   removed errorenous check

test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1277:

> 1275:                                                 + "nor a list of test 
> windows "
> 1276:                                                 + "has been provided");
> 1277:             }

@aivanov-jdk Running into exception when this check is added here. I believe 
this check needs to be done after `positionWindows` is assigned.
  
And since this check is already in-place in 
[validate()](https://github.com/openjdk/jdk/blob/418bb42b95b177f5f31f756054d0dd83740c6686/test/jdk/java/awt/regtesthelpers/PassFailJFrame.java#L1475C1-L1479C18)
 , I'm removing it from here.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21023#discussion_r1761989555

Reply via email to