# HG changeset patch # User sveerabhadra # Date 1514974055 -19800 # Node ID c08f1067ef57894c3c48d68bbad2e879e1907a7c # Parent fcd1913b1d3673f0b2ed301e6bced8417949d2e9 8193468: [PIT][TEST BUG]: java/awt/FileDialog/MoveToTrashTest.java fails on Linux Reviewed-by: aghaisas, serb diff -r fcd1913b1d36 -r c08f1067ef57 test/jdk/java/awt/FileDialog/MoveToTrashTest.java --- a/test/jdk/java/awt/FileDialog/MoveToTrashTest.java Wed Jan 03 11:14:04 2018 +0530 +++ b/test/jdk/java/awt/FileDialog/MoveToTrashTest.java Wed Jan 03 15:37:35 2018 +0530 @@ -23,7 +23,7 @@ /* @test - @bug 8190515 + @bug 8190515 8193468 @summary java.awt.Desktop.moveToTrash(File) prompts on Windows 7 but not on Mac. @run main MoveToTrashTest */ @@ -39,18 +39,23 @@ private static boolean fileStatus = false; public static void main(String[] args) { - try { - file = File.createTempFile("TestFile","txt"); - } catch (IOException ex) { - throw new RuntimeException("Test failed. Exception thrown: ", ex); - } + if (!Desktop.getDesktop().isSupported(Desktop.Action.MOVE_TO_TRASH)) { + System.out.println("Move to trash action is not supported on the"+ + " platform under test. Marking the test passed"); + } else { + try { + file = File.createTempFile("TestFile","txt"); + } catch (IOException ex) { + throw new RuntimeException("Test failed. Exception thrown: ", ex); + } - // In case any UI that may pop up while deleting the file would - // block this thread until the user actions them. Hence do file - // check in a different thread and we assume it takes about sometime - // till it deletes the file(or popup) on the main thread. - new Thread(null, MoveToTrashTest::checkFileExistence, "FileCheck", 0, false).start(); - fileStatus = Desktop.getDesktop().moveToTrash(file); + // In case any UI that may pop up while deleting the file would + // block this thread until the user actions them. Hence do file + // check in a different thread and we assume it takes about sometime + // till it deletes the file(or popup) on the main thread. + new Thread(null, MoveToTrashTest::checkFileExistence, "FileCheck", 0, false).start(); + fileStatus = Desktop.getDesktop().moveToTrash(file); + } } private static void checkFileExistence() { @@ -63,10 +68,10 @@ robot.delay(1500); - if(!fileStatus) { + if (!fileStatus) { throw new RuntimeException("Test failed due to error while deleting the file"); } else { - if(file.exists()) { + if (file.exists()) { throw new RuntimeException("Test failed"); } else { System.out.println("Test passed");