Skip to content

Commit e398735

Browse files
author
y_bilopolov
committed
init reactor greenlet earlier
1 parent 8081f06 commit e398735

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

pytest_twisted.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ def stop_twisted_greenlet():
5454
gr_twisted.switch()
5555

5656

57+
def pytest_addhooks(pluginmanager):
58+
init_twisted_greenlet()
59+
60+
5761
@pytest.fixture(scope="session", autouse=True)
5862
def twisted_greenlet(request):
5963
request.addfinalizer(stop_twisted_greenlet)

testing/test_basic.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,3 +103,26 @@ def test_MAIN():
103103
rr = testdir.run(sys.executable, "-m", "pytest", "-v")
104104
outcomes = rr.parseoutcomes()
105105
assert outcomes.get("passed") == 1
106+
107+
108+
def test_blocon_in_hook(testdir):
109+
testdir.makeconftest("""
110+
import pytest
111+
from twisted.internet import reactor, defer
112+
113+
def pytest_configure(config):
114+
d = defer.Deferred()
115+
reactor.callLater(0.01, d.callback, 1)
116+
pytest.blockon(d)
117+
""")
118+
testdir.makepyfile("""
119+
from twisted.internet import reactor, defer
120+
121+
def test_succeed():
122+
d = defer.Deferred()
123+
reactor.callLater(0.01, d.callback, 1)
124+
return d
125+
""")
126+
rr = testdir.run(sys.executable, "-m", "pytest", "-v")
127+
outcomes = rr.parseoutcomes()
128+
assert outcomes.get("passed") == 1

0 commit comments

Comments
 (0)