On Mon, 16 Aug 2021 20:05:58 GMT, lawrence.andrews <github.com+87324768+lawrence-and...@openjdk.org> wrote:
>> 1) Automated the manual test case. >> 2) Removed html dependent file >> 3) Removed javax.swing.JApplet dependent. >> 4) Test case can be executed independently as well with jtreg framework. >> 5) Added methods to know that JFrame and Other component is visible before >> starting the user action via Robot. >> >> @shurymury > > lawrence.andrews has updated the pull request incrementally with two > additional commits since the last revision: > > - Fixed a single space issue > - Add frame.setLocationRelativeTo to get the frame to center of the screen test/jdk/java/awt/im/4959409/bug4959409.java line 47: > 45: import java.awt.Robot; > 46: import java.util.concurrent.CountDownLatch; > 47: import java.util.concurrent.TimeUnit; Usually in JDK, `javax.*` imports go after `java.*`. test/jdk/java/awt/im/4959409/bug4959409.java line 124: > 122: } > 123: > 124: Robot robot = new Robot(); Won't using `robot.setAutoDelay(DELAY)` give the same effect without the need to interleave key presses and mouse moves with explicit delay? test/jdk/java/awt/im/4959409/bug4959409.java line 144: > 142: robot.delay(DELAY); > 143: robot.keyRelease(KeyEvent.VK_1); > 144: robot.delay(DELAY); Shall we not release '1' first and then Shift? Isn't it the case mentioned in #5079 ? test/jdk/java/awt/im/4959409/bug4959409.java line 173: > 171: while (count <= 5) { > 172: TimeUnit.SECONDS.sleep(1); > 173: if (component.isVisible()) { Should `component.isVisible()` also be called on EDT? test/jdk/java/awt/im/4959409/bug4959409.java line 198: > 196: }); > 197: } > 198: } Probably this could be simplified to: Suggestion: try { createUIAndTest(); } finally { SwingUtilities.invokeAndWait(()-> { if (frame != null) { frame.dispose(); } }); } With the assumption `createUIAndTest()` is made static. ------------- PR: https://git.openjdk.java.net/jdk/pull/5058