From eb0f48920f5a30217a780f79181540b81c89faba Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Thu, 1 Aug 2019 07:21:29 +0200 Subject: [PATCH] =?utf8?q?=F0=9F=90=9B=20Fix=20bug=20with=20nanosecond=20d?= =?utf8?q?isplay?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../net/pterodactylus/sone/template/DurationFormatFilter.kt | 2 +- .../pterodactylus/sone/template/DurationFormatFilterTest.kt | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/net/pterodactylus/sone/template/DurationFormatFilter.kt b/src/main/kotlin/net/pterodactylus/sone/template/DurationFormatFilter.kt index 559c9da..db49ef1 100644 --- a/src/main/kotlin/net/pterodactylus/sone/template/DurationFormatFilter.kt +++ b/src/main/kotlin/net/pterodactylus/sone/template/DurationFormatFilter.kt @@ -53,7 +53,7 @@ private enum class FixedDuration { override val symbol = "ms" }, MICROS { - override fun number(duration: Duration) = duration.nano / 1_1000.0 + override fun number(duration: Duration) = duration.nano / 1_000.0 override val symbol = "μs" }, NANOS { diff --git a/src/test/kotlin/net/pterodactylus/sone/template/DurationFormatFilterTest.kt b/src/test/kotlin/net/pterodactylus/sone/template/DurationFormatFilterTest.kt index 9e378a8..fa62b50 100644 --- a/src/test/kotlin/net/pterodactylus/sone/template/DurationFormatFilterTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/template/DurationFormatFilterTest.kt @@ -81,6 +81,16 @@ class DurationFormatFilterTest { verifyDuration(123456789, "123.5ms", "ns") } + @Test + fun `123456 with scale ns is rendered as “123_5μs”`() { + verifyDuration(123456, "123.5μs", "ns") + } + + @Test + fun `123 with scale ns is rendered as “123_0ns”`() { + verifyDuration(123, "123.0ns", "ns") + } + private fun verifyDuration(value: Any, expectedRendering: String, scale: String? = null) { assertThat(filter.format(null, value, scale?.let { mapOf("scale" to scale) } ?: emptyMap()), equalTo(expectedRendering)) } -- 2.7.4