mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
bpo-45890: Add tests for tracing try-except-finally blocks (GH-29746)
This commit is contained in:
parent
8db06528ca
commit
a310fd83a0
2 changed files with 51 additions and 2 deletions
|
@ -642,15 +642,18 @@ class TraceTestCase(unittest.TestCase):
|
|||
2
|
||||
except:
|
||||
4
|
||||
finally:
|
||||
else:
|
||||
6
|
||||
finally:
|
||||
8
|
||||
|
||||
self.run_and_compare(func,
|
||||
[(0, 'call'),
|
||||
(1, 'line'),
|
||||
(2, 'line'),
|
||||
(6, 'line'),
|
||||
(6, 'return')])
|
||||
(8, 'line'),
|
||||
(8, 'return')])
|
||||
|
||||
def test_nested_loops(self):
|
||||
|
||||
|
@ -1016,6 +1019,47 @@ class TraceTestCase(unittest.TestCase):
|
|||
(3, 'line'),
|
||||
(3, 'return')])
|
||||
|
||||
def test_try_in_try_with_exception(self):
|
||||
|
||||
def func():
|
||||
try:
|
||||
try:
|
||||
raise TypeError
|
||||
except ValueError as ex:
|
||||
5
|
||||
except TypeError:
|
||||
7
|
||||
|
||||
self.run_and_compare(func,
|
||||
[(0, 'call'),
|
||||
(1, 'line'),
|
||||
(2, 'line'),
|
||||
(3, 'line'),
|
||||
(3, 'exception'),
|
||||
(4, 'line'),
|
||||
(6, 'line'),
|
||||
(7, 'line'),
|
||||
(7, 'return')])
|
||||
|
||||
def func():
|
||||
try:
|
||||
try:
|
||||
raise ValueError
|
||||
except ValueError as ex:
|
||||
5
|
||||
except TypeError:
|
||||
7
|
||||
|
||||
self.run_and_compare(func,
|
||||
[(0, 'call'),
|
||||
(1, 'line'),
|
||||
(2, 'line'),
|
||||
(3, 'line'),
|
||||
(3, 'exception'),
|
||||
(4, 'line'),
|
||||
(5, 'line'),
|
||||
(5, 'return')])
|
||||
|
||||
def test_if_in_if_in_if(self):
|
||||
def func(a=0, p=1, z=1):
|
||||
if p:
|
||||
|
|
|
@ -11,6 +11,11 @@ from trace import Trace
|
|||
|
||||
from test.tracedmodules import testmod
|
||||
|
||||
##
|
||||
## See also test_sys_settrace.py, which contains tests that cover
|
||||
## tracing of many more code blocks.
|
||||
##
|
||||
|
||||
#------------------------------- Utilities -----------------------------------#
|
||||
|
||||
def fix_ext_py(filename):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue