changeset 385:dcd5b4b3a7dd

Fix for zero division error in test coverage summarizer. Closes #138.
author cmlenz
date Wed, 25 Jul 2007 19:57:24 +0000
parents dff1cde945aa
children 4cf556eb1cf1
files bitten/trac_ext/summarizers.py
diffstat 1 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/bitten/trac_ext/summarizers.py
+++ b/bitten/trac_ext/summarizers.py
@@ -98,7 +98,10 @@
         data = []
         total_loc, total_cov = 0, 0
         for unit, file, loc, cov in cursor:
-            loc, cov = int(loc), float(cov)
+            try:
+                loc, cov = int(loc), float(cov)
+            except TypeError:
+                continue # no rows
             if loc:
                 d = {'name': unit, 'loc': loc, 'cov': int(cov)}
                 if file:
@@ -107,7 +110,11 @@
                 total_loc += loc
                 total_cov += loc * cov
 
+        coverage = 0
+        if total_loc != 0:
+            coverage = total_cov // total_loc
+
         hdf = HDFWrapper(loadpaths=Chrome(self.env).get_all_templates_dirs())
         hdf['data'] = data
-        hdf['totals'] = {'loc': total_loc, 'cov': int(total_cov / total_loc)}
+        hdf['totals'] = {'loc': total_loc, 'cov': int(coverage)}
         return hdf.render('bitten_summary_coverage.cs')
Copyright (C) 2012-2017 Edgewall Software