> 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. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/15665/files - new: https://git.openjdk.org/jdk/pull/15665/files/70256b66..62521e38 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=15665&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=15665&range=00-01 Stats: 259 lines in 1 file changed: 201 ins; 18 del; 40 mod Patch: https://git.openjdk.org/jdk/pull/15665.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/15665/head:pull/15665 PR: https://git.openjdk.org/jdk/pull/15665
