< prev index next >

test/jdk/java/awt/FileDialog/MacOSGoToFolderCrash.java

Print this page




  28 import java.awt.event.KeyEvent;
  29 
  30 /**
  31  * @test
  32  * @key headful
  33  * @bug 8234522
  34  * @requires (os.family == "mac")
  35  * @summary no crash should occur when the "Go To Folder" feature is used on
  36  *          macOS in the native FileDialog
  37  */
  38 public final class MacOSGoToFolderCrash {
  39 
  40     public static void main(final String[] args) throws Exception {
  41         EventQueue.invokeLater(() -> {
  42             FileDialog fd = new FileDialog((Frame) null);
  43             fd.setVisible(true);
  44         });
  45         Robot robot = new Robot();
  46         robot.setAutoDelay(400);
  47         robot.waitForIdle();
  48         // "⌘+Shift+G" – Open "Go To Folder" window
  49         robot.keyPress(KeyEvent.VK_META);
  50         robot.keyPress(KeyEvent.VK_SHIFT);
  51         robot.keyPress(KeyEvent.VK_G);
  52         robot.keyRelease(KeyEvent.VK_G);
  53         robot.keyRelease(KeyEvent.VK_SHIFT);
  54         robot.keyRelease(KeyEvent.VK_META);
  55         // Select something
  56         robot.keyPress(KeyEvent.VK_DOWN);
  57         robot.keyRelease(KeyEvent.VK_DOWN);
  58         robot.keyPress(KeyEvent.VK_ENTER);
  59         robot.keyRelease(KeyEvent.VK_ENTER);
  60         // Close File dialog
  61         robot.keyPress(KeyEvent.VK_ESCAPE);
  62         robot.keyRelease(KeyEvent.VK_ESCAPE);
  63     }
  64 }


  28 import java.awt.event.KeyEvent;
  29 
  30 /**
  31  * @test
  32  * @key headful
  33  * @bug 8234522
  34  * @requires (os.family == "mac")
  35  * @summary no crash should occur when the "Go To Folder" feature is used on
  36  *          macOS in the native FileDialog
  37  */
  38 public final class MacOSGoToFolderCrash {
  39 
  40     public static void main(final String[] args) throws Exception {
  41         EventQueue.invokeLater(() -> {
  42             FileDialog fd = new FileDialog((Frame) null);
  43             fd.setVisible(true);
  44         });
  45         Robot robot = new Robot();
  46         robot.setAutoDelay(400);
  47         robot.waitForIdle();
  48         // "CMD+Shift+G" - Open "Go To Folder" window
  49         robot.keyPress(KeyEvent.VK_META);
  50         robot.keyPress(KeyEvent.VK_SHIFT);
  51         robot.keyPress(KeyEvent.VK_G);
  52         robot.keyRelease(KeyEvent.VK_G);
  53         robot.keyRelease(KeyEvent.VK_SHIFT);
  54         robot.keyRelease(KeyEvent.VK_META);
  55         // Select something
  56         robot.keyPress(KeyEvent.VK_DOWN);
  57         robot.keyRelease(KeyEvent.VK_DOWN);
  58         robot.keyPress(KeyEvent.VK_ENTER);
  59         robot.keyRelease(KeyEvent.VK_ENTER);
  60         // Close File dialog
  61         robot.keyPress(KeyEvent.VK_ESCAPE);
  62         robot.keyRelease(KeyEvent.VK_ESCAPE);
  63     }
  64 }
< prev index next >