def test_trace_concurrent_spawn_later_calls(self):
# create multiple futures so that we expect multiple
# traces instead of a single one, even if greenlets
# are delayed
def greenlet():
with self.tracer.trace('greenlet'):
gevent.sleep(0.01)
jobs = [gevent.spawn_later(0.01, greenlet) for x in range(100)]
gevent.joinall(jobs)
traces = self.tracer.writer.pop_traces()
eq_(100, len(traces))
eq_(1, len(traces[0]))
eq_('greenlet', traces[0][0].name)
评论列表
文章目录