Skip to content

Commit

Permalink
Test for lack of implicit return line event
Browse files Browse the repository at this point in the history
  • Loading branch information
nbastin committed Mar 22, 2004
1 parent 80d937e commit aea9459
Showing 1 changed file with 27 additions and 9 deletions.
36 changes: 27 additions & 9 deletions Lib/test/test_trace.py
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,22 @@ def settrace_and_raise(tracefunc):
(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 = []
Expand Down Expand Up @@ -157,25 +173,27 @@ def run_test2(self, func):
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):
Expand Down

0 comments on commit aea9459

Please sign in to comment.