From 6bffda848ed609d1761de69db7f7360c02172719 Mon Sep 17 00:00:00 2001 From: Duarte Meneses Date: Tue, 12 Jul 2016 14:27:15 +0200 Subject: [PATCH] Improve quality --- .../sonar/api/batch/bootstrap/ProjectKey.java | 1 + .../internal/DefaultAnalysisErrorTest.java | 40 ++++++++++++++++++- .../org/sonar/scanner/cpd/CpdExecutor.java | 7 +--- .../scanner/scan/WorkDirectoryCleaner.java | 7 +--- 4 files changed, 41 insertions(+), 14 deletions(-) diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/bootstrap/ProjectKey.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/bootstrap/ProjectKey.java index 0daadad90df6..bcd9941d3872 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/batch/bootstrap/ProjectKey.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/batch/bootstrap/ProjectKey.java @@ -19,6 +19,7 @@ */ package org.sonar.api.batch.bootstrap; +@FunctionalInterface public interface ProjectKey { String get(); } diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/error/internal/DefaultAnalysisErrorTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/error/internal/DefaultAnalysisErrorTest.java index 3b9f62a4856e..cb67b294f544 100644 --- a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/error/internal/DefaultAnalysisErrorTest.java +++ b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/error/internal/DefaultAnalysisErrorTest.java @@ -31,8 +31,10 @@ import org.sonar.api.batch.fs.TextPointer; import org.sonar.api.batch.fs.internal.DefaultInputFile; import org.sonar.api.batch.fs.internal.DefaultTextPointer; +import org.sonar.api.batch.sensor.error.NewAnalysisError; import org.sonar.api.batch.sensor.internal.SensorStorage; import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.*; public class DefaultAnalysisErrorTest { private InputFile inputFile; @@ -71,8 +73,42 @@ public void test_save() { } @Test - public void test_must_have_file() { + public void test_no_storage() { exception.expect(NullPointerException.class); - new DefaultAnalysisError(storage).save(); + DefaultAnalysisError analysisError = new DefaultAnalysisError(); + analysisError.onFile(inputFile).save(); + } + + @Test + public void test_validation() { + try { + new DefaultAnalysisError(storage).onFile(null); + fail("Expected exception"); + } catch (IllegalArgumentException e) { + // expected + } + + NewAnalysisError error = new DefaultAnalysisError(storage).onFile(inputFile); + try { + error.onFile(inputFile); + fail("Expected exception"); + } catch (IllegalStateException e) { + // expected + } + + error = new DefaultAnalysisError(storage).at(textPointer); + try { + error.at(textPointer); + fail("Expected exception"); + } catch (IllegalStateException e) { + // expected + } + + try { + new DefaultAnalysisError(storage).save(); + fail("Expected exception"); + } catch (NullPointerException e) { + // expected + } } } diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/cpd/CpdExecutor.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/cpd/CpdExecutor.java index 07b03c182570..285a25d68482 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/cpd/CpdExecutor.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/cpd/CpdExecutor.java @@ -114,12 +114,7 @@ private void runCpdAnalysis(String resource, final Collection fileBlocks) List duplications; Future> futureResult = null; try { - futureResult = executorService.submit(new Callable>() { - @Override - public List call() throws Exception { - return SuffixTreeCloneDetectionAlgorithm.detect(index, fileBlocks); - } - }); + futureResult = executorService.submit(() -> SuffixTreeCloneDetectionAlgorithm.detect(index, fileBlocks)); duplications = futureResult.get(TIMEOUT, TimeUnit.SECONDS); } catch (TimeoutException e) { LOG.warn("Timeout during detection of duplications for " + inputFile.absolutePath()); diff --git a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/WorkDirectoryCleaner.java b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/WorkDirectoryCleaner.java index c2d14632cfa0..1640ce17ff0a 100644 --- a/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/WorkDirectoryCleaner.java +++ b/sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/WorkDirectoryCleaner.java @@ -53,11 +53,6 @@ public void execute() { } private DirectoryStream list() throws IOException { - return Files.newDirectoryStream(workDir, new DirectoryStream.Filter() { - @Override - public boolean accept(Path entry) throws IOException { - return !DirectoryLock.LOCK_FILE_NAME.equals(entry.getFileName().toString()); - } - }); + return Files.newDirectoryStream(workDir, entry -> !DirectoryLock.LOCK_FILE_NAME.equals(entry.getFileName().toString())); } }