From 1105c2898b265370fe1f1e7e9cb335dc5d954de2 Mon Sep 17 00:00:00 2001 From: Chris Heisterkamp Date: Thu, 1 Dec 2016 08:56:02 -0800 Subject: [PATCH] Don't exit with number of failures because Java will mod 256 the exit code so System.exit(512) == System.exit(256) == System.exit(0) --- .../pantsbuild/tools/junit/impl/ConsoleRunnerImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/java/org/pantsbuild/tools/junit/impl/ConsoleRunnerImpl.java b/src/java/org/pantsbuild/tools/junit/impl/ConsoleRunnerImpl.java index a0efbed7329e..888606f92fd2 100644 --- a/src/java/org/pantsbuild/tools/junit/impl/ConsoleRunnerImpl.java +++ b/src/java/org/pantsbuild/tools/junit/impl/ConsoleRunnerImpl.java @@ -449,7 +449,7 @@ void run(Collection tests) { createUnexpectedExitHook(shutdownListener, swappableOut.getOriginal()); Runtime.getRuntime().addShutdownHook(unexpectedExitHook); - int failures = 0; + int failures = 1; try { Collection parsedTests = new SpecParser(tests).parse(); if (useExperimentalRunner) { @@ -458,17 +458,17 @@ void run(Collection tests) { failures = runLegacy(parsedTests, core); } } catch (SpecException e) { - failures = 1; swappableErr.getOriginal().println("Error parsing specs: " + e.getMessage()); } catch (InitializationError e) { - failures = 1; swappableErr.getOriginal().println("Error initializing JUnit: " + e.getMessage()); } finally { // If we're exiting via a thrown exception, we'll get a better message by letting it // propagate than by halt()ing. Runtime.getRuntime().removeShutdownHook(unexpectedExitHook); } - exit(failures); + + // We used to exit(failures) but it turns out System.exit(256) == System.exit(0) + exit(failures == 0 ? 0 : 1); } /**