summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2009-12-20 11:03:33 -0500
committerNed Batchelder <ned@nedbatchelder.com>2009-12-20 11:03:33 -0500
commita81c9c2598e4beb00f64e0fb994561e9f7b66b01 (patch)
tree34e0356821fc246fe5bede7a340727efaa26f8e4 /test
parent4d117fd6de4a9307d8033be5392984302b8c259d (diff)
downloadpython-coveragepy-a81c9c2598e4beb00f64e0fb994561e9f7b66b01.tar.gz
Jumps to jumps could make loops look like they go places they really don't, so start new chunks for every absolute jump. Fixes issue #39.
Diffstat (limited to 'test')
-rw-r--r--test/test_arcs.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/test/test_arcs.py b/test/test_arcs.py
index cbd7645..f93e1f5 100644
--- a/test/test_arcs.py
+++ b/test/test_arcs.py
@@ -229,6 +229,33 @@ class LoopArcTest(CoverageTest):
arcz_missing="27" # while loop never exits naturally.
)
+ def test_for_if_else_for(self):
+ self.check_coverage("""\
+ def branches_2(l):
+ if l:
+ for e in l:
+ a = 4
+ else:
+ a = 6
+
+ def branches_3(l):
+ for x in l:
+ if x:
+ for e in l:
+ a = 12
+ else:
+ a = 14
+
+ branches_2([0,1])
+ branches_3([0,1])
+ """,
+ arcz=
+ ".1 18 8G GH H. "
+ ".2 23 34 43 26 3. 6. "
+ ".9 9A 9. AB BC CB B9 AE E9",
+ arcz_missing="26 6."
+ )
+
class ExceptionArcTest(CoverageTest):
"""Arc-measuring tests involving exception handling."""