< prev index next >

test/jdk/tools/jpackage/helpers/jdk/jpackage/test/TestInstance.java

Print this page




 219             beforeActions.forEach(a -> ThrowingConsumer.toConsumer(a).accept(
 220                     testInstance));
 221             try {
 222                 if (!dryRun) {
 223                     Files.createDirectories(workDir);
 224                     testBody.accept(testInstance);
 225                 }
 226             } finally {
 227                 afterActions.forEach(a -> TKit.ignoreExceptions(() -> a.accept(
 228                         testInstance)));
 229             }
 230             status = Status.Passed;
 231         } finally {
 232             if (skippedTestException != null) {
 233                 status = Status.Skipped;
 234             } else if (status == null) {
 235                 status = Status.Failed;
 236             }
 237 
 238             if (!KEEP_WORK_DIR.contains(status)) {





 239                 TKit.deleteDirectoryRecursive(workDir);

 240             }
 241 
 242             TKit.log(String.format("%s %s; checks=%d", status, fullName,
 243                     assertCount));
 244         }
 245     }
 246 
 247     private static Class enclosingMainMethodClass() {
 248         StackTraceElement st[] = Thread.currentThread().getStackTrace();
 249         for (StackTraceElement ste : st) {
 250             if ("main".equals(ste.getMethodName())) {
 251                 return Functional.ThrowingSupplier.toSupplier(() -> Class.forName(
 252                         ste.getClassName())).get();
 253             }
 254         }
 255         return null;
 256     }
 257 
 258     private static boolean isCalledByJavatest() {
 259         StackTraceElement st[] = Thread.currentThread().getStackTrace();




 219             beforeActions.forEach(a -> ThrowingConsumer.toConsumer(a).accept(
 220                     testInstance));
 221             try {
 222                 if (!dryRun) {
 223                     Files.createDirectories(workDir);
 224                     testBody.accept(testInstance);
 225                 }
 226             } finally {
 227                 afterActions.forEach(a -> TKit.ignoreExceptions(() -> a.accept(
 228                         testInstance)));
 229             }
 230             status = Status.Passed;
 231         } finally {
 232             if (skippedTestException != null) {
 233                 status = Status.Skipped;
 234             } else if (status == null) {
 235                 status = Status.Failed;
 236             }
 237 
 238             if (!KEEP_WORK_DIR.contains(status)) {
 239                 if (Files.isSameFile(workDir, Path.of("."))) {
 240                     // 1. If the work directory is the current directory, don't
 241                     // delete it, just clean as deleting it would be confusing.
 242                     TKit.deleteDirectoryContentsRecursive(workDir);
 243                 } else {
 244                     TKit.deleteDirectoryRecursive(workDir);
 245                 }
 246             }
 247 
 248             TKit.log(String.format("%s %s; checks=%d", status, fullName,
 249                     assertCount));
 250         }
 251     }
 252 
 253     private static Class enclosingMainMethodClass() {
 254         StackTraceElement st[] = Thread.currentThread().getStackTrace();
 255         for (StackTraceElement ste : st) {
 256             if ("main".equals(ste.getMethodName())) {
 257                 return Functional.ThrowingSupplier.toSupplier(() -> Class.forName(
 258                         ste.getClassName())).get();
 259             }
 260         }
 261         return null;
 262     }
 263 
 264     private static boolean isCalledByJavatest() {
 265         StackTraceElement st[] = Thread.currentThread().getStackTrace();


< prev index next >