1f4b607116
This commit adds a generator test for throwing into a nested exception, and one when using yield-from with a pending exception cleanup. Both these tests currently fail on the native emitter, and are simplified versions of native test failures from uasyncio in #5332.
34 lines
734 B
Python
34 lines
734 B
Python
# Tests that the correct nested exception handler is used when
|
|
# throwing into a generator (previously failed on native emitter).
|
|
|
|
def gen():
|
|
try:
|
|
yield 1
|
|
try:
|
|
yield 2
|
|
try:
|
|
yield 3
|
|
except Exception:
|
|
yield 4
|
|
print(0)
|
|
yield 5
|
|
except Exception:
|
|
yield 6
|
|
print(1)
|
|
yield 7
|
|
except Exception:
|
|
yield 8
|
|
print(2)
|
|
yield 9
|
|
|
|
for i in range(1, 10):
|
|
g = gen()
|
|
try:
|
|
for _ in range(i):
|
|
print(next(g))
|
|
print(g.throw(ValueError))
|
|
except ValueError:
|
|
print('ValueError')
|
|
except StopIteration:
|
|
print('StopIteration')
|