aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api
diff options
context:
space:
mode:
authorDuarte Meneses <duarte.meneses@sonarsource.com>2016-07-12 14:27:15 +0200
committerDuarte Meneses <duarte.meneses@sonarsource.com>2016-07-12 14:27:19 +0200
commit6bffda848ed609d1761de69db7f7360c02172719 (patch)
tree2ea1c766a92951a9068ed50813bde3ccbb0ab7d4 /sonar-plugin-api
parent7bea09f6eb442441908de2df48b0ed7dd75e001f (diff)
downloadsonarqube-6bffda848ed609d1761de69db7f7360c02172719.tar.gz
sonarqube-6bffda848ed609d1761de69db7f7360c02172719.zip
Improve quality
Diffstat (limited to 'sonar-plugin-api')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/batch/bootstrap/ProjectKey.java1
-rw-r--r--sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/error/internal/DefaultAnalysisErrorTest.java40
2 files changed, 39 insertions, 2 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 0daadad90df..bcd9941d387 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 3b9f62a4856..cb67b294f54 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.InputFile;
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 class DefaultAnalysisErrorTest {
}
@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
+ }
}
}