Browse Source

SONARPLUGINS-1023 Don't show leading zeros, so format of "total time" is fully consistent with Maven

tags/2.5-rc1
Evgeny Mandrikov 12 years ago
parent
commit
97f3bdda06

+ 9
- 1
src/main/java/org/sonar/runner/Main.java View File

@@ -76,7 +76,15 @@ public final class Main {
long m = (time - h * 60 * 60 * 1000) / (60 * 1000);
long s = (time - h * 60 * 60 * 1000 - m * 60 * 1000) / 1000;
long ms = time % 1000;
return String.format("%1$d:%2$02d:%3$02d.%4$03ds", h, m, s, ms);
final String format;
if (h > 0) {
format = "%1$d:%2$02d:%3$02d.%4$03ds";
} else if (m > 0) {
format = "%2$d:%3$02d.%4$03ds";
} else {
format = "%3$d.%4$03ds";
}
return String.format(format, h, m, s, ms);
}

static Properties loadProperties(String[] args) {

+ 3
- 3
src/test/java/org/sonar/runner/MainTest.java View File

@@ -104,8 +104,8 @@ public class MainTest {
@Test
public void shouldFormatTime() {
assertThat(Main.formatTime(1 * 60 * 60 * 1000 + 2 * 60 * 1000 + 3 * 1000 + 400), is("1:02:03.400s"));
assertThat(Main.formatTime(2 * 60 * 1000 + 3 * 1000 + 400), is("0:02:03.400s"));
assertThat(Main.formatTime(3 * 1000 + 400), is("0:00:03.400s"));
assertThat(Main.formatTime(400), is("0:00:00.400s"));
assertThat(Main.formatTime(2 * 60 * 1000 + 3 * 1000 + 400), is("2:03.400s"));
assertThat(Main.formatTime(3 * 1000 + 400), is("3.400s"));
assertThat(Main.formatTime(400), is("0.400s"));
}
}

Loading…
Cancel
Save