Files
micropython/tests/basics/gen_yield_from_throw_repeat.py
2024-06-21 16:23:08 +10:00

23 lines
493 B
Python

# Test throwing repeatedly into the same generator, where that generator
# is yielding from another generator.
def yielder():
yield 4
yield 5
def gen():
while True:
try:
print("gen received:", (yield from yielder()))
except ValueError as exc:
print(repr(exc))
g = gen()
for i in range(2):
print("send, got:", g.send(None))
print("throw, got:", g.throw(ValueError("a", i)))
print("throw, got:", g.throw(ValueError("b", i)))