diff options
author | Julien HENRY <julien.henry@sonarsource.com> | 2018-12-20 11:48:17 +0100 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2019-01-16 09:43:10 +0100 |
commit | e3b3e6950a4dcb728025b4a80343ad73c68516bf (patch) | |
tree | 2baa5f2744234675dc26e71356c699695f4c1943 /sonar-plugin-api/src/test | |
parent | bbff7949d06677e808d7c6f2cf4fd7cfc1f1a079 (diff) | |
download | sonarqube-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.java | 55 |
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" + |