From 58d17e3b332e3a1f8e4e1b6f69965c3172fd7c59 Mon Sep 17 00:00:00 2001 From: Tatsushi Inagaki Date: Wed, 19 Nov 2014 15:06:49 +0900 Subject: [PATCH 1/3] Fix to avoid a compile error due to float to int truncation with GCCGO Signed-off-by: Tatsushi Inagaki --- units/size_test.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/units/size_test.go b/units/size_test.go index 5b329fc..3e410b0 100644 --- a/units/size_test.go +++ b/units/size_test.go @@ -23,9 +23,9 @@ func TestHumanSize(t *testing.T) { assertEquals(t, "1 MB", HumanSize(1000000)) assertEquals(t, "1.049 MB", HumanSize(1048576)) assertEquals(t, "2 MB", HumanSize(2*MB)) - assertEquals(t, "3.42 GB", HumanSize(3.42*GB)) - assertEquals(t, "5.372 TB", HumanSize(5.372*TB)) - assertEquals(t, "2.22 PB", HumanSize(2.22*PB)) + assertEquals(t, "3.42 GB", HumanSize(int64(float64(3.42*GB)))) + assertEquals(t, "5.372 TB", HumanSize(int64(float64(5.372*TB)))) + assertEquals(t, "2.22 PB", HumanSize(int64(float64(2.22*PB)))) } func TestFromHumanSize(t *testing.T) { From 7d92b1230e3e1687f595418d6fb5caa7f1efafa6 Mon Sep 17 00:00:00 2001 From: Tatsushi Inagaki Date: Tue, 25 Nov 2014 16:48:09 +0900 Subject: [PATCH 2/3] Revert "Fix to avoid a compile error due to float to int truncation with GCCGO" This reverts commit 967a42f116d23051c862a3b4983925de2016f83c. Signed-off-by: Tatsushi Inagaki Roll back the change to fix the parameter of HumanSize from int64 to float64 --- units/size_test.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/units/size_test.go b/units/size_test.go index 3e410b0..5b329fc 100644 --- a/units/size_test.go +++ b/units/size_test.go @@ -23,9 +23,9 @@ func TestHumanSize(t *testing.T) { assertEquals(t, "1 MB", HumanSize(1000000)) assertEquals(t, "1.049 MB", HumanSize(1048576)) assertEquals(t, "2 MB", HumanSize(2*MB)) - assertEquals(t, "3.42 GB", HumanSize(int64(float64(3.42*GB)))) - assertEquals(t, "5.372 TB", HumanSize(int64(float64(5.372*TB)))) - assertEquals(t, "2.22 PB", HumanSize(int64(float64(2.22*PB)))) + assertEquals(t, "3.42 GB", HumanSize(3.42*GB)) + assertEquals(t, "5.372 TB", HumanSize(5.372*TB)) + assertEquals(t, "2.22 PB", HumanSize(2.22*PB)) } func TestFromHumanSize(t *testing.T) { From e5b1c193795b51e9f8e9b72eacc058e06480f747 Mon Sep 17 00:00:00 2001 From: Tatsushi Inagaki Date: Tue, 25 Nov 2014 17:02:47 +0900 Subject: [PATCH 3/3] Fix to avoid a compilation error of size_test.go with GCCGO due to float to int truncation Signed-off-by: Tatsushi Inagaki --- units/size.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/units/size.go b/units/size.go index 264f388..7cfb57b 100644 --- a/units/size.go +++ b/units/size.go @@ -39,7 +39,7 @@ var binaryAbbrs = []string{"B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", // HumanSize returns a human-readable approximation of a size // using SI standard (eg. "44kB", "17MB") -func HumanSize(size int64) string { +func HumanSize(size float64) string { return intToString(float64(size), 1000.0, decimapAbbrs) }