summaryrefslogtreecommitdiff
path: root/test/test_api.py
diff options
context:
space:
mode:
authorNed Batchelder <nedbat@gmail.com>2011-08-03 17:32:15 -0400
committerNed Batchelder <nedbat@gmail.com>2011-08-03 17:32:15 -0400
commit5cf19e6f1afed26790065fd815784b2f1abf90ca (patch)
tree85d04dcaf651b30050322d26d59dd2eb3a7a13e9 /test/test_api.py
parentd9318b840bec37c116d5ef95ac1a618149f625da (diff)
parentb0631ade5791ebb3a0a0c80a710d1719b944d06d (diff)
downloadpython-coveragepy-5cf19e6f1afed26790065fd815784b2f1abf90ca.tar.gz
Merged in bignose/coveragepy-debian (pull request #2)
Diffstat (limited to 'test/test_api.py')
-rw-r--r--test/test_api.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/test_api.py b/test/test_api.py
index 1805c39..868a544 100644
--- a/test/test_api.py
+++ b/test/test_api.py
@@ -467,3 +467,36 @@ class SourceOmitIncludeTest(CoverageTest):
self.filenames_not_in_summary(lines,
"p1a.py p1c.py p2a.py p2b.py"
)
+
+
+class AnalysisTest(CoverageTest):
+ """Test the numerical analysis of results."""
+ def test_many_missing_branches(self):
+ cov = coverage.coverage(branch=True)
+
+ self.make_file("missing.py", """\
+ def fun1(x):
+ if x == 1:
+ print("one")
+ else:
+ print("not one")
+ print("done") # pragma: nocover
+
+ def fun2(x):
+ print("x")
+
+ fun2(3)
+ """)
+
+ # Import the python file, executing it.
+ cov.start()
+ self.import_local_file("missing") # pragma: recursive coverage
+ cov.stop() # pragma: recursive coverage
+
+ nums = cov._analyze("missing.py").numbers
+ self.assertEqual(nums.n_files, 1)
+ self.assertEqual(nums.n_statements, 7)
+ self.assertEqual(nums.n_excluded, 1)
+ self.assertEqual(nums.n_missing, 3)
+ self.assertEqual(nums.n_branches, 2)
+ self.assertEqual(nums.n_missing_branches, 0)