diff options
author | Duarte Meneses <duarte.meneses@sonarsource.com> | 2015-10-29 16:37:29 +0100 |
---|---|---|
committer | Duarte Meneses <duarte.meneses@sonarsource.com> | 2015-11-03 10:14:38 +0100 |
commit | 3e5cbb0098adc6b59313fd501d395272edfe2e64 (patch) | |
tree | c4b832fd10b176b1766b30c931ff46714b30749c /sonar-core/src | |
parent | d5d4548ee4f0c13360ca4f28ff751f927daef663 (diff) | |
download | sonarqube-3e5cbb0098adc6b59313fd501d395272edfe2e64.tar.gz sonarqube-3e5cbb0098adc6b59313fd501d395272edfe2e64.zip |
SONAR-6211 Skip project key validation in issues mode
Diffstat (limited to 'sonar-core/src')
-rw-r--r-- | sonar-core/src/main/java/org/sonar/core/component/ComponentKeys.java | 9 | ||||
-rw-r--r-- | sonar-core/src/test/java/org/sonar/core/component/ComponentKeysTest.java | 10 |
2 files changed, 19 insertions, 0 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/component/ComponentKeys.java b/sonar-core/src/main/java/org/sonar/core/component/ComponentKeys.java index a427b165afb..70a40d084b1 100644 --- a/sonar-core/src/main/java/org/sonar/core/component/ComponentKeys.java +++ b/sonar-core/src/main/java/org/sonar/core/component/ComponentKeys.java @@ -34,6 +34,8 @@ public final class ComponentKeys { * Allowed characters are alphanumeric, '-', '_', '.' and ':', with at least one non-digit */ private static final String VALID_MODULE_KEY_REGEXP = "[\\p{Alnum}\\-_.:]*[\\p{Alpha}\\-_.:]+[\\p{Alnum}\\-_.:]*"; + + private static final String VALID_MODULE_KEY_ISSUES_MODE_REGEXP = "[\\p{Alnum}\\-_.:/]*[\\p{Alpha}\\-_.:/]+[\\p{Alnum}\\-_.:/]*"; /* * Allowed characters are alphanumeric, '-', '_', '.' and '/' */ @@ -95,6 +97,13 @@ public final class ComponentKeys { } /** + * Same as {@link #isValidModuleKey(String)}, but allows additionally '/'. + */ + public static boolean isValidModuleKeyIssuesMode(String keyCandidate) { + return keyCandidate.matches(VALID_MODULE_KEY_ISSUES_MODE_REGEXP); + } + + /** * <p>Test if given parameter is valid for a branch. Valid format is:</p> * <ul> * <li>Allowed characters: diff --git a/sonar-core/src/test/java/org/sonar/core/component/ComponentKeysTest.java b/sonar-core/src/test/java/org/sonar/core/component/ComponentKeysTest.java index 85d64836846..b2eb18a9d4d 100644 --- a/sonar-core/src/test/java/org/sonar/core/component/ComponentKeysTest.java +++ b/sonar-core/src/test/java/org/sonar/core/component/ComponentKeysTest.java @@ -57,6 +57,16 @@ public class ComponentKeysTest { assertThat(ComponentKeys.isValidModuleKey("ab_12")).isTrue(); assertThat(ComponentKeys.isValidModuleKey("ab/12")).isFalse(); } + + @Test + public void isValidModuleKeyIssuesMode() { + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("")).isFalse(); + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("abc")).isTrue(); + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("0123")).isFalse(); + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("ab 12")).isFalse(); + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("ab_12")).isTrue(); + assertThat(ComponentKeys.isValidModuleKeyIssuesMode("ab/12")).isTrue(); + } @Test public void isValidBranchKey() { |