diff options
author | Nicholas Bastin <nick.bastin@gmail.com> | 2004-03-22 18:30:42 (GMT) |
---|---|---|
committer | Nicholas Bastin <nick.bastin@gmail.com> | 2004-03-22 18:30:42 (GMT) |
commit | aea9459cb1d335dda003ebd39b3882bf712fb03e (patch) | |
tree | f2d6bc8742aa44fc1de8f3078e1f78c6649a0d7e /Lib/test | |
parent | 80d937e986300d8e0cae93cb29bcb4211a65f92c (diff) | |
download | cpython-aea9459cb1d335dda003ebd39b3882bf712fb03e.zip cpython-aea9459cb1d335dda003ebd39b3882bf712fb03e.tar.gz cpython-aea9459cb1d335dda003ebd39b3882bf712fb03e.tar.bz2 |
Test for lack of implicit return line event
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_trace.py | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/Lib/test/test_trace.py b/Lib/test/test_trace.py index ff6fc58..93ad688 100644 --- a/Lib/test/test_trace.py +++ b/Lib/test/test_trace.py @@ -125,6 +125,22 @@ settrace_and_raise.events = [(2, 'exception'), (4, 'line'), (4, 'return')] +# implicit return example +def ireturn_example(): + a = 5 + b = 5 + if a == b: + b = a+1 + else: + pass + +ireturn_example.events = [(0, 'call'), + (1, 'line'), + (2, 'line'), + (3, 'line'), + (4, 'line'), + (4, 'return')] + class Tracer: def __init__(self): self.events = [] @@ -157,25 +173,27 @@ class TraceTestCase(unittest.TestCase): self.compare_events(func.func_code.co_firstlineno, tracer.events, func.events) - def test_1_basic(self): + def test_01_basic(self): self.run_test(basic) - def test_2_arigo(self): + def test_02_arigo(self): self.run_test(arigo_example) - def test_3_one_instr(self): + def test_03_one_instr(self): self.run_test(one_instr_line) - def test_4_no_pop_blocks(self): + def test_04_no_pop_blocks(self): self.run_test(no_pop_blocks) - def test_5_no_pop_tops(self): + def test_05_no_pop_tops(self): self.run_test(no_pop_tops) - def test_6_call(self): + def test_06_call(self): self.run_test(call) - def test_7_raise(self): + def test_07_raise(self): self.run_test(test_raise) - def test_8_settrace_and_return(self): + def test_08_settrace_and_return(self): self.run_test2(settrace_and_return) - def test_9_settrace_and_raise(self): + def test_09_settrace_and_raise(self): self.run_test2(settrace_and_raise) + def test_10_ireturn(self): + self.run_test(ireturn_example) class RaisingTraceFuncTestCase(unittest.TestCase): def trace(self, frame, event, arg): |