From 056b7ea065ead9bc1f2ba9e2e6d2ca1733e0948d Mon Sep 17 00:00:00 2001 From: Teryk Bellahsene Date: Wed, 11 Mar 2015 15:45:18 +0100 Subject: [PATCH] update new issues formatting - formatted debt - cleaner hasNextIssues() check - update MyNewIssues property definition --- .../issue/notification/NewIssuesNotification.java | 3 ++- .../issue/notification/NewIssuesStatistics.java | 3 +-- .../notification/NewIssuesNotificationTest.java | 5 +++-- .../main/resources/org/sonar/l10n/core.properties | 2 +- .../main/java/org/sonar/api/utils/Durations.java | 14 +++++++++++++- 5 files changed, 20 insertions(+), 7 deletions(-) diff --git a/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesNotification.java b/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesNotification.java index 29784d29f01..022cc29684e 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesNotification.java +++ b/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesNotification.java @@ -35,6 +35,7 @@ import org.sonar.server.user.index.UserIndex; import java.util.Date; import java.util.List; +import java.util.Locale; import static org.sonar.server.issue.notification.NewIssuesEmailTemplate.*; import static org.sonar.server.issue.notification.NewIssuesStatistics.METRIC.SEVERITY; @@ -120,7 +121,7 @@ public class NewIssuesNotification extends Notification { } public NewIssuesNotification setDebt(Duration debt) { - setFieldValue(METRIC.DEBT + COUNT, durations.encode(debt)); + setFieldValue(METRIC.DEBT + COUNT, durations.format(Locale.ENGLISH, debt)); return this; } diff --git a/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesStatistics.java b/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesStatistics.java index 63e97ef066b..f3eecd1fe13 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesStatistics.java +++ b/server/sonar-server/src/main/java/org/sonar/server/issue/notification/NewIssuesStatistics.java @@ -118,8 +118,7 @@ public class NewIssuesStatistics { } public boolean hasIssues() { - Multiset severityStats = distributions.get(SEVERITY); - return severityStats != null && severityStats.size() > 0; + return !distributionFor(SEVERITY).isEmpty(); } public List> statsForMetric(METRIC metric) { diff --git a/server/sonar-server/src/test/java/org/sonar/server/issue/notification/NewIssuesNotificationTest.java b/server/sonar-server/src/test/java/org/sonar/server/issue/notification/NewIssuesNotificationTest.java index 18ab1361d4b..67338fbd425 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/issue/notification/NewIssuesNotificationTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/issue/notification/NewIssuesNotificationTest.java @@ -35,6 +35,7 @@ import org.sonar.server.db.DbClient; import org.sonar.server.user.index.UserIndex; import java.util.Date; +import java.util.Locale; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Matchers.any; @@ -104,11 +105,11 @@ public class NewIssuesNotificationTest { @Test public void set_debt() throws Exception { - when(durations.encode(any(Duration.class))).thenReturn("55min"); + when(durations.format(any(Locale.class), any(Duration.class))).thenReturn("55 min"); sut.setDebt(Duration.create(55)); - assertThat(sut.getFieldValue(DEBT + ".count")).isEqualTo("55min"); + assertThat(sut.getFieldValue(DEBT + ".count")).isEqualTo("55 min"); } private void addIssueNTimes(DefaultIssue issue, int times) { diff --git a/sonar-core/src/main/resources/org/sonar/l10n/core.properties b/sonar-core/src/main/resources/org/sonar/l10n/core.properties index 1662177c320..9e3150b7d82 100644 --- a/sonar-core/src/main/resources/org/sonar/l10n/core.properties +++ b/sonar-core/src/main/resources/org/sonar/l10n/core.properties @@ -2040,7 +2040,7 @@ notification.dispatcher.ChangesOnMyIssue=Changes in issues assigned to me or rep notification.dispatcher.NewIssues=New issues notification.dispatcher.NewAlerts=New quality gate status notification.dispatcher.NewFalsePositiveIssue=Issues resolved as false positive or won't fix -notification.dispatcher.MyNewIssues=My New Issues +notification.dispatcher.SQ-MyNewIssues=My New Issues #------------------------------------------------------------------------------ diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/utils/Durations.java b/sonar-plugin-api/src/main/java/org/sonar/api/utils/Durations.java index 4b7cf060cac..cf85aa07967 100644 --- a/sonar-plugin-api/src/main/java/org/sonar/api/utils/Durations.java +++ b/sonar-plugin-api/src/main/java/org/sonar/api/utils/Durations.java @@ -27,7 +27,6 @@ import org.sonar.api.config.Settings; import org.sonar.api.i18n.I18n; import javax.annotation.CheckForNull; - import java.util.Locale; /** @@ -82,8 +81,21 @@ public class Durations implements BatchComponent, ServerComponent { * Return the formatted work duration. *
* Example : format(Locale.FRENCH, Duration.encode("9d 10h"), DurationFormat.SHORT) -> 10j 2h (if sonar.technicalDebt.hoursInDay property is set to 8) + * + * @deprecated since 5.2 replaced by format(java.util.Locale, org.sonar.api.utils.Duration) */ + @Deprecated public String format(Locale locale, Duration duration, DurationFormat format) { + return format(locale, duration); + } + + /** + * Return the formatted work duration. + *
+ * Example : format(Locale.FRENCH, Duration.encode("9d 10h"), DurationFormat.SHORT) -> 10j 2h (if sonar.technicalDebt.hoursInDay property is set to 8) + * + */ + public String format(Locale locale, Duration duration) { Long durationInMinutes = duration.toMinutes(); if (durationInMinutes == 0) { return "0"; -- 2.39.5