[pypy-commit] pypy stacklet: Next test, passes.
arigo
noreply at buildbot.pypy.org
Fri Aug 19 14:53:28 CEST 2011
Author: Armin Rigo <arigo at tunes.org>
Branch: stacklet
Changeset: r46634:980fcdcba554
Date: 2011-08-19 14:55 +0200
http://bitbucket.org/pypy/pypy/changeset/980fcdcba554/
Log: Next test, passes.
diff --git a/pypy/module/test_lib_pypy/test_greenlet.py b/pypy/module/test_lib_pypy/test_greenlet.py
--- a/pypy/module/test_lib_pypy/test_greenlet.py
+++ b/pypy/module/test_lib_pypy/test_greenlet.py
@@ -19,3 +19,28 @@
g.switch()
lst.append(4)
assert lst == range(5)
+
+ def test_pass_around(self):
+ from greenlet import greenlet
+ seen = []
+ def f(x, y):
+ seen.append((x, y))
+ seen.append(greenlet.getcurrent().parent.switch())
+ seen.append(greenlet.getcurrent().parent.switch(42))
+ return 44, 'z'
+ g = greenlet(f)
+ seen.append(g.switch(40, 'x'))
+ seen.append(g.switch(41, 'y'))
+ seen.append(g.switch(43))
+ #
+ def f2():
+ return 45
+ g = greenlet(f2)
+ seen.append(g.switch())
+ #
+ def f3():
+ pass
+ g = greenlet(f3)
+ seen.append(g.switch())
+ #
+ assert seen == [(40, 'x'), (), (41, 'y'), 42, 43, (44, 'z'), 45, None]
More information about the pypy-commit
mailing list