]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/blobdiff - src/allmydata/web/common.py
web: refactor rate computation, fixes #1166
[tahoe-lafs/tahoe-lafs.git] / src / allmydata / web / common.py
index 8a0a9cb5a7c98c707d0680d09e3b7842c63bd512..8e265679ce5acb591e44eff220c8e659e7512f9e 100644 (file)
@@ -90,6 +90,19 @@ def abbreviate_time(data):
         return "%.1fms" % (1000*s)
     return "%.0fus" % (1000000*s)
 
+def compute_rate(bytes, seconds):
+    if bytes is None:
+      return None
+
+    if seconds is None or seconds == 0:
+      return None
+
+    # negative values don't make sense here
+    assert bytes > -1
+    assert seconds > 0
+
+    return 1.0 * bytes / seconds
+
 def abbreviate_rate(data):
     # 21.8kBps, 554.4kBps 4.37MBps
     if data is None: