circuitpython/tests/basics/gen_yield_from_throw_repeat.py
2024-09-05 14:54:18 -04:00

23 lines
554 B
Python

# CIRCUITPY-CHANGE: micropython does not have this test file
# 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)))