summaryrefslogtreecommitdiff
path: root/tests/run/generators.pyx
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/generators.pyx')
-rw-r--r--tests/run/generators.pyx20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/run/generators.pyx b/tests/run/generators.pyx
index 9faa9d4cf..6314ee8f0 100644
--- a/tests/run/generators.pyx
+++ b/tests/run/generators.pyx
@@ -504,6 +504,26 @@ def test_generator_abc():
yield 1
+def test_generator_frame(a=1):
+ """
+ >>> gen = test_generator_frame()
+ >>> import types
+ >>> isinstance(gen.gi_frame, types.FrameType) or gen.gi_frame
+ True
+ >>> gen.gi_frame is gen.gi_frame # assert that it's cached
+ True
+ >>> gen.gi_frame.f_code is not None
+ True
+ >>> code_obj = gen.gi_frame.f_code
+ >>> code_obj.co_argcount
+ 1
+ >>> code_obj.co_varnames
+ ('a', 'b')
+ """
+ b = a + 1
+ yield b
+
+
# GH Issue 3265 - **kwds could cause a crash in some cases due to not
# handling NULL pointers (in testing it shows as a REFNANNY error).
# This was on creation of the generator and