From 5cd508e6eb76484ae672bf8c1ee19bafd0229dd7 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Lievremont Date: Tue, 8 Oct 2013 11:19:31 +0200 Subject: [PATCH] SONAR-4679 Remove line range feature from issue (ex|in)clusion --- .../ignore/IgnoreIssuesConfiguration.java | 36 ++++++------------- .../pattern/AbstractPatternInitializer.java | 2 +- .../ExclusionPatternInitializerTest.java | 13 ------- .../InclusionPatternInitializerTest.java | 2 -- 4 files changed, 12 insertions(+), 41 deletions(-) diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/IgnoreIssuesConfiguration.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/IgnoreIssuesConfiguration.java index a27823d4724..a35ad0e80ca 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/IgnoreIssuesConfiguration.java +++ b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/IgnoreIssuesConfiguration.java @@ -20,12 +20,12 @@ package org.sonar.plugins.core.issue.ignore; +import com.google.common.collect.ImmutableList; +import org.sonar.api.CoreProperties; import org.sonar.api.PropertyType; +import org.sonar.api.config.PropertyDefinition; import org.sonar.api.config.PropertyFieldDefinition; import org.sonar.api.resources.Qualifiers; -import org.sonar.api.CoreProperties; -import com.google.common.collect.ImmutableList; -import org.sonar.api.config.PropertyDefinition; import java.util.List; @@ -43,8 +43,6 @@ public final class IgnoreIssuesConfiguration { private static final String PROPERTY_FILE_PATH_PATTERN = "File Path Pattern"; public static final String RULE_KEY = "ruleKey"; private static final String PROPERTY_RULE_KEY_PATTERN = "Rule Key Pattern"; - public static final String LINE_RANGE_KEY = "lineRange"; - private static final String PROPERTY_LINE_RANGE = "Line Range"; public static final String BLOCK_SUFFIX = ".block"; public static final String PATTERNS_BLOCK_KEY = EXCLUSION_KEY_PREFIX + BLOCK_SUFFIX; @@ -72,23 +70,17 @@ public final class IgnoreIssuesConfiguration { .onQualifiers(Qualifiers.PROJECT) .index(3) .fields( - PropertyFieldDefinition.build(RESOURCE_KEY) - .name(PROPERTY_FILE_PATH_PATTERN) - .description("Pattern used to match files which should be ignored.") - .type(PropertyType.STRING) - .indicativeSize(LARGE_SIZE) - .build(), PropertyFieldDefinition.build(RULE_KEY) .name(PROPERTY_RULE_KEY_PATTERN) .description("Pattern used to match rules which should be ignored.") .type(PropertyType.STRING) .indicativeSize(LARGE_SIZE) .build(), - PropertyFieldDefinition.build(LINE_RANGE_KEY) - .name(PROPERTY_LINE_RANGE) - .description("Range of lines that should be ignored.") + PropertyFieldDefinition.build(RESOURCE_KEY) + .name(PROPERTY_FILE_PATH_PATTERN) + .description("Pattern used to match files which should be ignored.") .type(PropertyType.STRING) - .indicativeSize(SMALL_SIZE) + .indicativeSize(LARGE_SIZE) .build()) .build(), PropertyDefinition.builder(PATTERNS_BLOCK_KEY) @@ -135,23 +127,17 @@ public final class IgnoreIssuesConfiguration { .onQualifiers(Qualifiers.PROJECT) .index(4) .fields( - PropertyFieldDefinition.build(RESOURCE_KEY) - .name(PROPERTY_FILE_PATH_PATTERN) - .description("Pattern used to match files on which issues should be enforced.") - .type(PropertyType.STRING) - .indicativeSize(LARGE_SIZE) - .build(), PropertyFieldDefinition.build(RULE_KEY) .name(PROPERTY_RULE_KEY_PATTERN) .description("Pattern used to match rules which should be enforced.") .type(PropertyType.STRING) .indicativeSize(LARGE_SIZE) .build(), - PropertyFieldDefinition.build(LINE_RANGE_KEY) - .name(PROPERTY_LINE_RANGE) - .description("Range of lines that should be considered.") + PropertyFieldDefinition.build(RESOURCE_KEY) + .name(PROPERTY_FILE_PATH_PATTERN) + .description("Pattern used to match files on which issues should be enforced.") .type(PropertyType.STRING) - .indicativeSize(SMALL_SIZE) + .indicativeSize(LARGE_SIZE) .build()) .build()); } diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/pattern/AbstractPatternInitializer.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/pattern/AbstractPatternInitializer.java index 6dffb6544d6..95a6815f28e 100644 --- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/pattern/AbstractPatternInitializer.java +++ b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/issue/ignore/pattern/AbstractPatternInitializer.java @@ -74,7 +74,7 @@ public abstract class AbstractPatternInitializer implements BatchExtension { String propPrefix = getMulticriteriaConfigurationKey() + "." + id + "."; String resourceKeyPattern = settings.getString(propPrefix + IgnoreIssuesConfiguration.RESOURCE_KEY); String ruleKeyPattern = settings.getString(propPrefix + IgnoreIssuesConfiguration.RULE_KEY); - String lineRange = settings.getString(propPrefix + IgnoreIssuesConfiguration.LINE_RANGE_KEY); + String lineRange = "*"; String[] fields = new String[] { resourceKeyPattern, ruleKeyPattern, lineRange }; PatternDecoder.checkRegularLineConstraints(StringUtils.join(fields, ","), fields); IssuePattern pattern = new IssuePattern(firstNonNull(resourceKeyPattern, "*"), firstNonNull(ruleKeyPattern, "*")); diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/ExclusionPatternInitializerTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/ExclusionPatternInitializerTest.java index ecee38a4373..6d667d07898 100644 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/ExclusionPatternInitializerTest.java +++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/ExclusionPatternInitializerTest.java @@ -53,10 +53,8 @@ public class ExclusionPatternInitializerTest { settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY, "1,2"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RESOURCE_KEY, "org/foo/Bar.java"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RULE_KEY, "*"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "*"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.RESOURCE_KEY, "org/foo/Hello.java"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.RULE_KEY, "checkstyle:MagicNumber"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "[15-200]"); patternsInitializer.initPatterns(); assertThat(patternsInitializer.hasConfiguredPatterns()).isTrue(); @@ -81,7 +79,6 @@ public class ExclusionPatternInitializerTest { settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY, "1"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RESOURCE_KEY, ""); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RULE_KEY, "*"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "*"); patternsInitializer.initPatterns(); } @@ -90,16 +87,6 @@ public class ExclusionPatternInitializerTest { settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY, "1"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RESOURCE_KEY, "*"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RULE_KEY, ""); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "*"); - patternsInitializer.initPatterns(); - } - - @Test(expected = SonarException.class) - public void shouldLogInvalidLineRange() { - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY, "1"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RESOURCE_KEY, "org/foo/Bar.java"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RULE_KEY, "*"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_EXCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "notALineRange"); patternsInitializer.initPatterns(); } diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/InclusionPatternInitializerTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/InclusionPatternInitializerTest.java index ce26da2df68..d277a2b30a3 100644 --- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/InclusionPatternInitializerTest.java +++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/issue/ignore/pattern/InclusionPatternInitializerTest.java @@ -51,10 +51,8 @@ public class InclusionPatternInitializerTest { settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY, "1,2"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RESOURCE_KEY, "org/foo/Bar.java"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.RULE_KEY, "*"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".1." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "*"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.RESOURCE_KEY, "org/foo/Hello.java"); settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.RULE_KEY, "checkstyle:MagicNumber"); - settings.setProperty(IgnoreIssuesConfiguration.PATTERNS_MULTICRITERIA_INCLUSION_KEY + ".2." + IgnoreIssuesConfiguration.LINE_RANGE_KEY, "[15-200]"); patternsInitializer.initPatterns(); assertThat(patternsInitializer.hasConfiguredPatterns()).isTrue(); -- 2.39.5