diff options
author | jonmv <venstad@gmail.com> | 2022-06-07 08:47:10 +0200 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2022-06-07 08:47:10 +0200 |
commit | 208dfbd3cd01a33276b56c4d5113a2402e9aee02 (patch) | |
tree | ab494d7c4669ae3c630bac2dd0a11051acbd088c /vespa-osgi-testrunner/src | |
parent | 5d84fef07d41c09f569c650fad30cb4157270c66 (diff) |
Catch more errors during test initialisation
Diffstat (limited to 'vespa-osgi-testrunner/src')
-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; } |