[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-2d-dev
Subject:    Re: RFR: 8294156: Allow PassFailJFrame.Builder to create test UI [v2]
From:       Alexey Ivanov <aivanov () openjdk ! org>
Date:       2023-09-27 16:59:34
Message-ID: Ap2B3Vnaok9Ra25whgNHary8EQl8_uY__33EcaQKRBU=.ec789294-6f4d-4949-9f2f-7b45fa504afb () github ! com
[Download RAW message or body]

On Wed, 13 Sep 2023 14:25:19 GMT, Alexey Ivanov <aivanov@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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic