Merge "Simplify human-readable size output"

This commit is contained in:
Jenkins
2012-11-19 19:39:19 +00:00
committed by Gerrit Code Review
2 changed files with 10 additions and 5 deletions
+5 -2
View File
@@ -175,8 +175,11 @@ def make_size_human_readable(size):
base = 1024.0
index = 0
while size > base:
while size >= base:
index = index + 1
size = size / base
return "%.3f%s" % (size, suffix[index])
padded = '%.1f' % size
stripped = padded.rstrip('0').rstrip('.')
return '%s%s' % (stripped, suffix[index])
+5 -3
View File
@@ -45,6 +45,8 @@ class TestUtils(unittest.TestCase):
data = ''.join([f for f in utils.integrity_iter(fixture, checksum)])
def test_make_size_human_readable(self):
self.assertEqual("1024.000kB", utils.make_size_human_readable(1048576))
self.assertEqual("1.375GB", utils.make_size_human_readable(1476395008))
self.assertEqual("9.309MB", utils.make_size_human_readable(9761280))
self.assertEqual("106B", utils.make_size_human_readable(106))
self.assertEqual("1000kB", utils.make_size_human_readable(1024000))
self.assertEqual("1MB", utils.make_size_human_readable(1048576))
self.assertEqual("1.4GB", utils.make_size_human_readable(1476395008))
self.assertEqual("9.3MB", utils.make_size_human_readable(9761280))