public void doTest() throws Exception { robot.waitForIdle(delay); parent.clickOpenButton(robot); robot.waitForIdle(delay); dialog.activated.waitForFlagTriggered(); assertTrue( dialog.activated.flag(), "Dialog did not trigger " + "Window Activated event when it became visible"); dialog.closeGained.waitForFlagTriggered(); assertTrue( dialog.closeGained.flag(), "the 1st button did not gain focus " + "when the Dialog became visible"); assertTrue( dialog.closeButton.hasFocus(), "the 1st button in the Dialog " + "gained focus but lost it afterwards"); dialog.openGained.reset(); robot.type(KeyEvent.VK_TAB); dialog.openGained.waitForFlagTriggered(); assertTrue( dialog.openGained.flag(), "Tab navigation did not happen properly on Dialog. Open button " + "did not gain focus on tab press when parent frame is visible"); dialog.clickOpenButton(robot); robot.waitForIdle(delay); frame.activated.waitForFlagTriggered(); assertTrue( frame.activated.flag(), "Frame did not trigger activated when " + "made visible. Dialog and its parent frame are visible"); frame.checkUnblockedFrame(robot, "Frame is the parent of a visible Dialog."); window.checkUnblockedWindow(robot, "Frame and its child Dialog are visible."); robot.waitForIdle(delay); EventQueue.invokeAndWait(this::closeAll); }