summaryrefslogtreecommitdiff
path: root/coverage/results.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2014-10-22 22:04:46 -0400
committerNed Batchelder <ned@nedbatchelder.com>2014-10-22 22:04:46 -0400
commitf1fa57a4b57f42694ca4d82c876e5f347dcaa381 (patch)
tree26cf4c2b8e22f2fb7ddccc78525613982e01aa48 /coverage/results.py
parente938c7058a1f109697de21baa34e9348594e6c59 (diff)
downloadpython-coveragepy-git-f1fa57a4b57f42694ca4d82c876e5f347dcaa381.tar.gz
Filtering now computes coverage percentages properly.
Diffstat (limited to 'coverage/results.py')
-rw-r--r--coverage/results.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/coverage/results.py b/coverage/results.py
index 6c41a944..5eff0f3e 100644
--- a/coverage/results.py
+++ b/coverage/results.py
@@ -204,8 +204,8 @@ class Numbers(object):
def pc_covered(self):
"""Returns a single percentage value for coverage."""
if self.n_statements > 0:
- pc_cov = (100.0 * (self.n_executed + self.n_executed_branches) /
- (self.n_statements + self.n_branches))
+ numerator, denominator = self.ratio_covered
+ pc_cov = (100.0 * numerator) / denominator
else:
pc_cov = 100.0
return pc_cov
@@ -236,6 +236,13 @@ class Numbers(object):
width += 1 + cls._precision
return width
+ @property
+ def ratio_covered(self):
+ """Return a numerator and denominator for the coverage ratio."""
+ numerator = self.n_executed + self.n_executed_branches
+ denominator = self.n_statements + self.n_branches
+ return numerator, denominator
+
def __add__(self, other):
nums = Numbers()
nums.n_files = self.n_files + other.n_files