8208227: tools/jdeps/DotFileTest.java fails on Win-X64
authorjjg
Wed, 25 Jul 2018 17:26:35 -0700
changeset 51201 21626dccd2ca
parent 51200 628333cfee7a
child 51202 59b0d8afc831
8208227: tools/jdeps/DotFileTest.java fails on Win-X64 Reviewed-by: darcy
test/langtools/tools/jdeps/DotFileTest.java
--- a/test/langtools/tools/jdeps/DotFileTest.java	Wed Jul 25 17:22:26 2018 -0700
+++ b/test/langtools/tools/jdeps/DotFileTest.java	Wed Jul 25 17:26:35 2018 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,8 @@
  * @summary Basic tests for jdeps -dotoutput option
  * @modules java.management
  *          jdk.jdeps/com.sun.tools.jdeps
- * @build Test p.Foo p.Bar
+ * @library /tools/lib
+ * @build toolbox.ToolBox Test p.Foo p.Bar
  * @run main DotFileTest
  */
 
@@ -43,6 +44,8 @@
 import java.util.regex.*;
 import java.util.stream.Collectors;
 
+import toolbox.ToolBox;
+
 public class DotFileTest {
     public static void main(String... args) throws Exception {
         int errors = 0;
@@ -51,9 +54,11 @@
             throw new Exception(errors + " errors found");
     }
 
+    final ToolBox toolBox;
     final Path dir;
     final Path dotoutput;
     DotFileTest() {
+        this.toolBox = new ToolBox();
         this.dir = Paths.get(System.getProperty("test.classes", "."));
         this.dotoutput = dir.resolve("dots");
     }
@@ -169,12 +174,10 @@
 
     Map<String,String> jdeps(List<String> args, Path dotfile) throws IOException {
         if (Files.exists(dotoutput)) {
-            try (DirectoryStream<Path> stream = Files.newDirectoryStream(dotoutput)) {
-                for (Path p : stream) {
-                    Files.delete(p);
-                }
-            }
-            Files.delete(dotoutput);
+            // delete contents of directory, then directory,
+            // waiting for confirmation on Windows
+            toolBox.cleanDirectory(dotoutput);
+            toolBox.deleteFiles(dotoutput);
         }
         // invoke jdeps
         StringWriter sw = new StringWriter();