On Fri, 3 Oct 2025 06:08:38 GMT, Prasanta Sadhukhan <[email protected]> wrote:
>> test/jdk/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java line >> 92: >> >>> 90: robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); >>> 91: robot.waitForIdle(); >>> 92: robot.delay(2000); >> >> I wonder if syncing with `mousePressed` event handler on the button and >> adding a little delay after `mousePressed` is triggered would allow for >> smaller delay. Anyway, using an event handler will *guarantee*, the same >> handler is called in `ButtonUI`. We will still need a delay to allow the >> button UI delegate to handle the event and to repaint the button, yet that >> delay less than 2 seconds would be enough. > > Since the color change to Red will happen on MOUSE_PRESSED and MOUSE_OVER > state, I wanted to give it more time to be in red color state so that robot > can pick the color.. > The failure was that it was picking up Green color even though the CI failure > artifact shows background is Red Yes, I got this… A delay of 2 seconds on each run means the test will *always* wait for 2 seconds even if the update occurred in 0.1 seconds. It's fine as it is, yet I'd rather use a better synchronisation to allow the test to complete quicker, at the very least I'd investigate whether it's possible and whether the more complicated logic in the test gives a time bonus as the result. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/27444#discussion_r2401369318
