diff --git a/tests/micropython/native_gen.py b/tests/micropython/native_gen.py new file mode 100644 index 0000000000..30c4c37bea --- /dev/null +++ b/tests/micropython/native_gen.py @@ -0,0 +1,21 @@ +# test for native generators + +# simple generator with yield and return +@micropython.native +def gen1(x): + yield x + yield x + 1 + return x + 2 +g = gen1(3) +print(next(g)) +print(next(g)) +try: + next(g) +except StopIteration as e: + print(e.args[0]) + +# using yield from +@micropython.native +def gen2(x): + yield from range(x) +print(list(gen2(3))) diff --git a/tests/micropython/native_gen.py.exp b/tests/micropython/native_gen.py.exp new file mode 100644 index 0000000000..cc09e309f2 --- /dev/null +++ b/tests/micropython/native_gen.py.exp @@ -0,0 +1,4 @@ +3 +4 +5 +[0, 1, 2]