Author: Armin Rigo <ar...@tunes.org> Branch: py3.5 Changeset: r89946:1368d86f0ce9 Date: 2017-02-05 18:00 +0100 http://bitbucket.org/pypy/pypy/changeset/1368d86f0ce9/
Log: PyCoro_CheckExact() diff --git a/pypy/module/cpyext/genobject.py b/pypy/module/cpyext/genobject.py --- a/pypy/module/cpyext/genobject.py +++ b/pypy/module/cpyext/genobject.py @@ -1,5 +1,7 @@ -from pypy.interpreter.generator import GeneratorIterator +from pypy.interpreter.generator import GeneratorIterator, Coroutine from pypy.module.cpyext.api import build_type_checkers PyGen_Check, PyGen_CheckExact = build_type_checkers("Gen", GeneratorIterator) + +_, PyCoro_CheckExact = build_type_checkers("Coro", Coroutine) diff --git a/pypy/module/cpyext/test/test_genobject.py b/pypy/module/cpyext/test/test_genobject.py --- a/pypy/module/cpyext/test/test_genobject.py +++ b/pypy/module/cpyext/test/test_genobject.py @@ -1,5 +1,6 @@ from pypy.module.cpyext.test.test_api import BaseApiTest from pypy.module.cpyext.genobject import PyGen_Check, PyGen_CheckExact +from pypy.module.cpyext.genobject import PyCoro_CheckExact class TestGenObject(BaseApiTest): @@ -11,5 +12,16 @@ """) assert PyGen_Check(space, w_geniter) assert PyGen_CheckExact(space, w_geniter) + assert not PyCoro_CheckExact(space, w_geniter) assert not PyGen_Check(space, space.wrap(2)) assert not PyGen_CheckExact(space, space.wrap("b")) + assert not PyCoro_CheckExact(space, space.wrap([])) + + w_coroutine = space.appexec([], """(): + async def f(): + pass + return f() + """) + assert not PyGen_Check(space, w_coroutine) + assert not PyGen_CheckExact(space, w_coroutine) + assert PyCoro_CheckExact(space, w_coroutine) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit