diff options
Diffstat (limited to 'vespa-osgi-testrunner')
-rw-r--r-- | vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java | 10 | ||||
-rw-r--r-- | vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/TestReport.java | 5 |
2 files changed, 8 insertions, 7 deletions
diff --git a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java index 089019111db..54f0941208d 100644 --- a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java +++ b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java @@ -90,8 +90,8 @@ public class JunitRunner extends AbstractComponent implements TestRunner { try { logRecords.clear(); execution = CompletableFuture.supplyAsync(() -> launchJunit(suite, testConfig)); - } catch (Exception e) { - execution = CompletableFuture.completedFuture(TestReport.createFailed(clock, suite, e)); + } catch (Throwable t) { + execution = CompletableFuture.completedFuture(TestReport.createFailed(clock, suite, t)); } return execution; } @@ -158,11 +158,11 @@ public class JunitRunner extends AbstractComponent implements TestRunner { if (execution.isDone()) { try { return execution.get(); - } catch (Exception e) { - logger.log(Level.WARNING, "Error getting test report", e); + } catch (Throwable t) { + logger.log(Level.WARNING, "Error getting test report", t); // Likely this is something wrong with the provided test bundle. Create a test report // and present in the console to enable tenants to act on it. - return TestReport.createFailed(clock, null, e); + return TestReport.createFailed(clock, null, t); } } else { return null; diff --git a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/TestReport.java b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/TestReport.java index a4fa3e62c50..e28c0e0a141 100644 --- a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/TestReport.java +++ b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/TestReport.java @@ -48,10 +48,11 @@ public class TestReport { this(clock, suite, new ContainerNode(null, toString(suite), clock.instant())); } - static TestReport createFailed(Clock clock, Suite suite, Exception exception) { + static TestReport createFailed(Clock clock, Suite suite, Throwable thrown) { + if (thrown instanceof OutOfMemoryError) throw (Error) thrown; TestReport failed = new TestReport(clock, suite); failed.complete(); - failed.root().children.add(new FailureNode(failed.root(), exception, suite)); + failed.root().children.add(new FailureNode(failed.root(), thrown, suite)); return failed; } |