From e6ec9d9aa3bd152f871d36b1229f043c668306cb Mon Sep 17 00:00:00 2001 From: Mark Rekveld Date: Mon, 10 Jul 2017 16:58:08 +0200 Subject: [PATCH] Autocloseable --- .../org/owasp/dependencycheck/Engine.java | 7 ++- .../owasp/dependencycheck/EngineModeTest.java | 46 +++++++++---------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java index f09f1db72..965debe5e 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java @@ -55,7 +55,7 @@ import static org.owasp.dependencycheck.analyzer.AnalysisPhase.*; * * @author Jeremy Long */ -public class Engine implements FileFilter { +public class Engine implements FileFilter, AutoCloseable { /** * {@link Engine} execution modes. @@ -193,6 +193,11 @@ public class Engine implements FileFilter { } } + @Override + public void close() throws Exception { + cleanup(); + } + /** * Loads the analyzers specified in the configuration file (or system * properties). diff --git a/dependency-check-core/src/test/java/org/owasp/dependencycheck/EngineModeTest.java b/dependency-check-core/src/test/java/org/owasp/dependencycheck/EngineModeTest.java index 680c89e09..3f6bb86d3 100644 --- a/dependency-check-core/src/test/java/org/owasp/dependencycheck/EngineModeTest.java +++ b/dependency-check-core/src/test/java/org/owasp/dependencycheck/EngineModeTest.java @@ -1,6 +1,5 @@ package org.owasp.dependencycheck; -import org.junit.After; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -26,48 +25,45 @@ public class EngineModeTest extends BaseTest { public TemporaryFolder tempDir = new TemporaryFolder(); @Rule public TestName testName = new TestName(); - private Engine engine; @Before public void setUp() throws Exception { Settings.setString(Settings.KEYS.DATA_DIRECTORY, tempDir.newFolder().getAbsolutePath()); } - @After - public void tearDown() throws Exception { - engine.cleanup(); - } - @Test public void testEvidenceCollectionMode() throws Exception { - engine = new Engine(Engine.Mode.EVIDENCE_COLLECTION); - assertDatabase(false); - for (AnalysisPhase phase : Engine.Mode.EVIDENCE_COLLECTION.phases) { - assertThat(engine.getAnalyzers(phase), is(notNullValue())); - } - for (AnalysisPhase phase : Engine.Mode.EVIDENCE_PROCESSING.phases) { - assertThat(engine.getAnalyzers(phase), is(nullValue())); + try (Engine engine = new Engine(Engine.Mode.EVIDENCE_COLLECTION)) { + assertDatabase(false); + for (AnalysisPhase phase : Engine.Mode.EVIDENCE_COLLECTION.phases) { + assertThat(engine.getAnalyzers(phase), is(notNullValue())); + } + for (AnalysisPhase phase : Engine.Mode.EVIDENCE_PROCESSING.phases) { + assertThat(engine.getAnalyzers(phase), is(nullValue())); + } } } @Test public void testEvidenceProcessingMode() throws Exception { - engine = new Engine(Engine.Mode.EVIDENCE_PROCESSING); - assertDatabase(true); - for (AnalysisPhase phase : Engine.Mode.EVIDENCE_PROCESSING.phases) { - assertThat(engine.getAnalyzers(phase), is(notNullValue())); - } - for (AnalysisPhase phase : Engine.Mode.EVIDENCE_COLLECTION.phases) { - assertThat(engine.getAnalyzers(phase), is(nullValue())); + try (Engine engine = new Engine(Engine.Mode.EVIDENCE_PROCESSING)) { + assertDatabase(true); + for (AnalysisPhase phase : Engine.Mode.EVIDENCE_PROCESSING.phases) { + assertThat(engine.getAnalyzers(phase), is(notNullValue())); + } + for (AnalysisPhase phase : Engine.Mode.EVIDENCE_COLLECTION.phases) { + assertThat(engine.getAnalyzers(phase), is(nullValue())); + } } } @Test public void testStandaloneMode() throws Exception { - engine = new Engine(Engine.Mode.STANDALONE); - assertDatabase(true); - for (AnalysisPhase phase : Engine.Mode.STANDALONE.phases) { - assertThat(engine.getAnalyzers(phase), is(notNullValue())); + try (Engine engine = new Engine(Engine.Mode.STANDALONE)) { + assertDatabase(true); + for (AnalysisPhase phase : Engine.Mode.STANDALONE.phases) { + assertThat(engine.getAnalyzers(phase), is(notNullValue())); + } } }