On Tue, 17 Aug 2021 15:50:56 GMT, lawrence.andrews
<[email protected]> 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 one
> additional commit since the last revision:
>
> Fixed review comments
Hi Lawrence,
I played a bit with the test and it looks it can be simplified.
First of all, `jTextField.isVisible` is always `true`. So it makes no sense to
check its value.
As for the frame, you have `ComponentListener` which decreases the value of
`frameVisibleLatch`. Alternatively, you could use `WindowListener` and its
`windowOpened`. Once the frame is displayed, the text field is also displayed.
So it looks like the code could be simplified to the following:
SwingUtilities.invokeAndWait( /* create the frame and components */);
robot.waitForIdle();
if (!frameVisibleLatch.await(TIMEOUT, TimeUnit.SECONDS)) {
new RuntimeException("Frame is not visible after " + TIMEOUT + "
seconds");
}
robot.waitForIdle();
performMouseAction();
// And so on
What do you think?
I suggest renaming `performMouseAction` to something more specific and
descriptive, like `clickTextField` — this way the purpose of the action /
method is obvious without opening its code.
-------------
PR: https://git.openjdk.java.net/jdk/pull/5058