summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/generator_throw_repeat.py
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2024-06-06 14:25:18 +1000
committerDamien George <damien@micropython.org>2024-06-21 16:23:08 +1000
commit0619f261a82ead92bbd05ba387ebb3292ae62de9 (patch)
tree67afc04e3d97bb1d982ed1b25558db4fef090ed1 /tests/basics/generator_throw_repeat.py
parent038125be79569548f5ebc0a336bda587ea7d63ca (diff)
downloadmicropython-0619f261a82ead92bbd05ba387ebb3292ae62de9.tar.gz
micropython-0619f261a82ead92bbd05ba387ebb3292ae62de9.zip
tests/basics: Add tests to test repeated throw into the same generator.
Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'tests/basics/generator_throw_repeat.py')
-rw-r--r--tests/basics/generator_throw_repeat.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/basics/generator_throw_repeat.py b/tests/basics/generator_throw_repeat.py
new file mode 100644
index 0000000000..6d6ef60a9b
--- /dev/null
+++ b/tests/basics/generator_throw_repeat.py
@@ -0,0 +1,16 @@
+# Test throwing repeatedly into the same generator.
+
+
+def gen():
+ while True:
+ try:
+ print("gen received:", (yield "value"))
+ 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)))