aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api/src/test
diff options
context:
space:
mode:
authorJulien HENRY <julien.henry@sonarsource.com>2018-12-20 11:48:17 +0100
committersonartech <sonartech@sonarsource.com>2019-01-16 09:43:10 +0100
commite3b3e6950a4dcb728025b4a80343ad73c68516bf (patch)
tree2baa5f2744234675dc26e71356c699695f4c1943 /sonar-plugin-api/src/test
parentbbff7949d06677e808d7c6f2cf4fd7cfc1f1a079 (diff)
downloadsonarqube-e3b3e6950a4dcb728025b4a80343ad73c68516bf.tar.gz
sonarqube-e3b3e6950a4dcb728025b4a80343ad73c68516bf.zip
SONAR-11598 Rework CPD exclusions
Diffstat (limited to 'sonar-plugin-api/src/test')
-rw-r--r--sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/cpd/internal/DefaultCpdTokensTest.java55
1 files changed, 26 insertions, 29 deletions
diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/cpd/internal/DefaultCpdTokensTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/cpd/internal/DefaultCpdTokensTest.java
index 2ccd9fd01cf..44827ebcebb 100644
--- a/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/cpd/internal/DefaultCpdTokensTest.java
+++ b/sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/cpd/internal/DefaultCpdTokensTest.java
@@ -19,12 +19,10 @@
*/
package org.sonar.api.batch.sensor.cpd.internal;
-import java.io.File;
import org.junit.Test;
-import org.sonar.api.batch.fs.InputFile;
+import org.sonar.api.batch.fs.internal.DefaultInputFile;
import org.sonar.api.batch.fs.internal.TestInputFileBuilder;
import org.sonar.api.batch.sensor.internal.SensorStorage;
-import org.sonar.api.config.internal.MapSettings;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.fail;
@@ -35,7 +33,7 @@ import static org.mockito.Mockito.verifyZeroInteractions;
public class DefaultCpdTokensTest {
- private static final InputFile INPUT_FILE = new TestInputFileBuilder("foo", "src/Foo.java")
+ private final DefaultInputFile inputFile = new TestInputFileBuilder("foo", "src/Foo.java")
.setLines(2)
.setOriginalLineStartOffsets(new int[] {0, 50})
.setOriginalLineEndOffsets(new int[] {49, 100})
@@ -45,22 +43,22 @@ public class DefaultCpdTokensTest {
@Test
public void save_no_tokens() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- DefaultCpdTokens tokens = new DefaultCpdTokens(new MapSettings().asConfig(), sensorStorage)
- .onFile(INPUT_FILE);
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage)
+ .onFile(inputFile);
tokens.save();
verify(sensorStorage).store(tokens);
- assertThat(tokens.inputFile()).isEqualTo(INPUT_FILE);
+ assertThat(tokens.inputFile()).isEqualTo(inputFile);
}
@Test
public void save_one_token() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- DefaultCpdTokens tokens = new DefaultCpdTokens(new MapSettings().asConfig(), sensorStorage)
- .onFile(INPUT_FILE)
- .addToken(INPUT_FILE.newRange(1, 2, 1, 5), "foo");
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage)
+ .onFile(inputFile)
+ .addToken(inputFile.newRange(1, 2, 1, 5), "foo");
tokens.save();
@@ -70,13 +68,12 @@ public class DefaultCpdTokensTest {
}
@Test
- public void handle_exclusions_by_pattern() {
+ public void handle_exclusions() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- MapSettings settings = new MapSettings();
- settings.setProperty("sonar.cpd.exclusions", "src/Foo.java,another");
- DefaultCpdTokens tokens = new DefaultCpdTokens(settings.asConfig(), sensorStorage)
- .onFile(INPUT_FILE)
- .addToken(INPUT_FILE.newRange(1, 2, 1, 5), "foo");
+ inputFile.setExcludedForDuplication(true);
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage)
+ .onFile(inputFile)
+ .addToken(inputFile.newRange(1, 2, 1, 5), "foo");
tokens.save();
@@ -88,12 +85,12 @@ public class DefaultCpdTokensTest {
@Test
public void save_many_tokens() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- DefaultCpdTokens tokens = new DefaultCpdTokens(new MapSettings().asConfig(), sensorStorage)
- .onFile(INPUT_FILE)
- .addToken(INPUT_FILE.newRange(1, 2, 1, 5), "foo")
- .addToken(INPUT_FILE.newRange(1, 6, 1, 10), "bar")
- .addToken(INPUT_FILE.newRange(1, 20, 1, 25), "biz")
- .addToken(INPUT_FILE.newRange(2, 1, 2, 10), "next");
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage)
+ .onFile(inputFile)
+ .addToken(inputFile.newRange(1, 2, 1, 5), "foo")
+ .addToken(inputFile.newRange(1, 6, 1, 10), "bar")
+ .addToken(inputFile.newRange(1, 20, 1, 25), "biz")
+ .addToken(inputFile.newRange(2, 1, 2, 10), "next");
tokens.save();
@@ -109,7 +106,7 @@ public class DefaultCpdTokensTest {
@Test
public void basic_validation() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- DefaultCpdTokens tokens = new DefaultCpdTokens(new MapSettings().asConfig(), sensorStorage);
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage);
try {
tokens.save();
fail("Expected exception");
@@ -117,7 +114,7 @@ public class DefaultCpdTokensTest {
assertThat(e).hasMessage("Call onFile() first");
}
try {
- tokens.addToken(INPUT_FILE.newRange(1, 2, 1, 5), "foo");
+ tokens.addToken(inputFile.newRange(1, 2, 1, 5), "foo");
fail("Expected exception");
} catch (Exception e) {
assertThat(e).hasMessage("Call onFile() first");
@@ -129,7 +126,7 @@ public class DefaultCpdTokensTest {
assertThat(e).hasMessage("Range should not be null");
}
try {
- tokens.addToken(INPUT_FILE.newRange(1, 2, 1, 5), null);
+ tokens.addToken(inputFile.newRange(1, 2, 1, 5), null);
fail("Expected exception");
} catch (Exception e) {
assertThat(e).hasMessage("Image should not be null");
@@ -139,12 +136,12 @@ public class DefaultCpdTokensTest {
@Test
public void validate_tokens_order() {
SensorStorage sensorStorage = mock(SensorStorage.class);
- DefaultCpdTokens tokens = new DefaultCpdTokens(new MapSettings().asConfig(), sensorStorage)
- .onFile(INPUT_FILE)
- .addToken(INPUT_FILE.newRange(1, 6, 1, 10), "bar");
+ DefaultCpdTokens tokens = new DefaultCpdTokens(sensorStorage)
+ .onFile(inputFile)
+ .addToken(inputFile.newRange(1, 6, 1, 10), "bar");
try {
- tokens.addToken(INPUT_FILE.newRange(1, 2, 1, 5), "foo");
+ tokens.addToken(inputFile.newRange(1, 2, 1, 5), "foo");
fail("Expected exception");
} catch (Exception e) {
assertThat(e).hasMessage("Tokens of file src/Foo.java should be provided in order.\n" +