From f3f3ca4f1194c46099ac2378af5c4176968f2b34 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Wed, 23 Oct 2024 07:18:20 -0500 Subject: [PATCH] formatting for bytes Signed-off-by: Jeff Carr --- helpers.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/helpers.go b/helpers.go index faef03e..8af3f60 100644 --- a/helpers.go +++ b/helpers.go @@ -115,3 +115,27 @@ func (c *Cluster) AddDroplet(uuid string, hostname string, cpus int, mem int) *D c.Droplets = append(c.Droplets, d) return d } + +func FormatBytes(b int64) string { + if b < 2000 { + return fmt.Sprintf("%d B", b) + } + + kb := int(b / 1024) + if kb < 2000 { + return fmt.Sprintf("%d KB", kb) + } + + mb := int(b / (1024 * 1024)) + if mb < 2000 { + return fmt.Sprintf("%d MB", mb) + } + + gb := int(b / (1024 * 1024 * 1024)) + if gb < 2000 { + return fmt.Sprintf("%d GB", gb) + } + + tb := int(b / (1024 * 1024 * 1024 * 1024)) + return fmt.Sprintf("%d TB", tb) +}