diff options
author | Simon Brandhof <simon.brandhof@gmail.com> | 2013-04-22 09:13:50 +0200 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@gmail.com> | 2013-04-22 09:13:50 +0200 |
commit | ca418a726e1e6699a5dd9a19c1a0496f79bff2f6 (patch) | |
tree | d83e6de4036438940bceb62990f9bfc11852cde8 | |
parent | 3396cdad099113d7418142a68ec73de35d3e174c (diff) | |
download | sonarqube-ca418a726e1e6699a5dd9a19c1a0496f79bff2f6.tar.gz sonarqube-ca418a726e1e6699a5dd9a19c1a0496f79bff2f6.zip |
SONAR-3755 abbreviate issue descriptions
-rw-r--r-- | sonar-core/src/main/java/org/sonar/core/issue/DefaultIssue.java | 7 | ||||
-rw-r--r-- | sonar-core/src/test/java/org/sonar/core/issue/DefaultIssueTest.java | 10 |
2 files changed, 5 insertions, 12 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/issue/DefaultIssue.java b/sonar-core/src/main/java/org/sonar/core/issue/DefaultIssue.java index 8e0103f08b6..6a7971cb59d 100644 --- a/sonar-core/src/main/java/org/sonar/core/issue/DefaultIssue.java +++ b/sonar-core/src/main/java/org/sonar/core/issue/DefaultIssue.java @@ -23,6 +23,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Maps; +import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; import org.sonar.api.issue.Issue; @@ -122,11 +123,7 @@ public class DefaultIssue implements Issue, Serializable { } public DefaultIssue setDescription(@Nullable String s) { - if (s != null) { - Preconditions.checkArgument(s.length() < Issue.DESCRIPTION_MAX_SIZE, - "Description must not be longer than " + Issue.DESCRIPTION_MAX_SIZE + " characters (got " + s.length() + ")"); - } - this.description = s; + this.description = StringUtils.abbreviate(s, DESCRIPTION_MAX_SIZE); return this; } diff --git a/sonar-core/src/test/java/org/sonar/core/issue/DefaultIssueTest.java b/sonar-core/src/test/java/org/sonar/core/issue/DefaultIssueTest.java index deb8837da88..ea9683ca24c 100644 --- a/sonar-core/src/test/java/org/sonar/core/issue/DefaultIssueTest.java +++ b/sonar-core/src/test/java/org/sonar/core/issue/DefaultIssueTest.java @@ -71,12 +71,8 @@ public class DefaultIssueTest { } @Test - public void size_of_description_should_be_limited() { - try { - issue.setDescription(StringUtils.repeat("a", 5000)); - fail(); - } catch (IllegalArgumentException e) { - assertThat(e).hasMessage("Description must not be longer than 4000 characters (got 5000)"); - } + public void size_of_description_should_be_abbreviated_if_too_long() { + issue.setDescription(StringUtils.repeat("a", 5000)); + assertThat(issue.description()).hasSize(4000); } } |