Home - Summaries: (main) : (py3.11) : (py3.12) : Everything - Nightly builds - Benchmarks - RPython - Builders - About

pypy.module.sys.test.apptest_monitoring:test_fire_py_yield_resume

def test_fire_py_yield_resume():
        E = sys.monitoring.events
        events = []
    
        def callback(*args):
            events.append(args[:2])
    
        sys.monitoring.use_tool_id(3, "test tool")
        try:
            sys.monitoring.register_callback(3, E.PY_START, callback)
            sys.monitoring.register_callback(3, E.PY_RESUME, callback)
            sys.monitoring.register_callback(3, E.PY_YIELD, callback)
            sys.monitoring.register_callback(3, E.PY_RETURN, callback)
            sys.monitoring.set_events(3, E.PY_START | E.PY_RESUME | E.PY_YIELD | E.PY_RETURN)
    
            def g():
                yield 1
                yield 2
    
            events[:] = []
            gen = g()
            code = g.__code__
            assert next(gen) == 1
            assert next(gen) == 2
            raises(StopIteration, next, gen)
            sys.monitoring.set_events(3, 0)
            g_events = [ev for ev in events if ev[0] is code]
>           assert len(g_events) == 6  # start, yield, resume, yield, resume, return
E           assert 5 == 6
E            +  where 5 = len([(<code object g at 0x00007fb9ca0508e0, file "/buildbot/slave/pypy-c-jit-linux-x86-64/build/pypy/module/sys/test/appte...508e0, file "/buildbot/slave/pypy-c-jit-linux-x86-64/build/pypy/module/sys/test/apptest_monitoring.py", line 340>, 10)])

../build/pypy/module/sys/test/apptest_monitoring.py:352: AssertionError
builder: pypy-c-jit-linux-x86-64 build #11971+
test: pypy.module.sys.test.apptest_monitoring:test_fire_py_yield_resume