forked from goodboy/tractor
Drop run and rpc_module_paths from discovery tests
parent
2efd8ed167
commit
1584c547cd
|
@ -20,8 +20,11 @@ async def test_reg_then_unreg(arb_addr):
|
||||||
assert actor.is_arbiter
|
assert actor.is_arbiter
|
||||||
assert len(actor._registry) == 1 # only self is registered
|
assert len(actor._registry) == 1 # only self is registered
|
||||||
|
|
||||||
async with tractor.open_nursery() as n:
|
async with tractor.open_nursery(
|
||||||
portal = await n.start_actor('actor', rpc_module_paths=[__name__])
|
arbiter_addr=arb_addr,
|
||||||
|
) as n:
|
||||||
|
|
||||||
|
portal = await n.start_actor('actor', enable_modules=[__name__])
|
||||||
uid = portal.channel.uid
|
uid = portal.channel.uid
|
||||||
|
|
||||||
async with tractor.get_arbiter(*arb_addr) as aportal:
|
async with tractor.get_arbiter(*arb_addr) as aportal:
|
||||||
|
@ -66,7 +69,7 @@ async def say_hello_use_wait(other_actor):
|
||||||
|
|
||||||
@tractor_test
|
@tractor_test
|
||||||
@pytest.mark.parametrize('func', [say_hello, say_hello_use_wait])
|
@pytest.mark.parametrize('func', [say_hello, say_hello_use_wait])
|
||||||
async def test_trynamic_trio(func, start_method):
|
async def test_trynamic_trio(func, start_method, arb_addr):
|
||||||
"""Main tractor entry point, the "master" process (for now
|
"""Main tractor entry point, the "master" process (for now
|
||||||
acts as the "director").
|
acts as the "director").
|
||||||
"""
|
"""
|
||||||
|
@ -119,13 +122,17 @@ async def spawn_and_check_registry(
|
||||||
remote_arbiter: bool = False,
|
remote_arbiter: bool = False,
|
||||||
with_streaming: bool = False,
|
with_streaming: bool = False,
|
||||||
) -> None:
|
) -> None:
|
||||||
|
|
||||||
|
async with tractor.open_root_actor(
|
||||||
|
arbiter_addr=arb_addr,
|
||||||
|
):
|
||||||
|
async with tractor.get_arbiter(*arb_addr) as portal:
|
||||||
|
# runtime needs to be up to call this
|
||||||
actor = tractor.current_actor()
|
actor = tractor.current_actor()
|
||||||
|
|
||||||
if remote_arbiter:
|
if remote_arbiter:
|
||||||
assert not actor.is_arbiter
|
assert not actor.is_arbiter
|
||||||
|
|
||||||
async with tractor.get_arbiter(*arb_addr) as portal:
|
|
||||||
|
|
||||||
if actor.is_arbiter:
|
if actor.is_arbiter:
|
||||||
|
|
||||||
async def get_reg():
|
async def get_reg():
|
||||||
|
@ -201,7 +208,7 @@ def test_subactors_unregister_on_cancel(
|
||||||
deregistering themselves with the arbiter.
|
deregistering themselves with the arbiter.
|
||||||
"""
|
"""
|
||||||
with pytest.raises(KeyboardInterrupt):
|
with pytest.raises(KeyboardInterrupt):
|
||||||
tractor.run(
|
trio.run(
|
||||||
partial(
|
partial(
|
||||||
spawn_and_check_registry,
|
spawn_and_check_registry,
|
||||||
arb_addr,
|
arb_addr,
|
||||||
|
@ -209,7 +216,6 @@ def test_subactors_unregister_on_cancel(
|
||||||
remote_arbiter=False,
|
remote_arbiter=False,
|
||||||
with_streaming=with_streaming,
|
with_streaming=with_streaming,
|
||||||
),
|
),
|
||||||
arbiter_addr=arb_addr
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -227,7 +233,7 @@ def test_subactors_unregister_on_cancel_remote_daemon(
|
||||||
tree) arbiter.
|
tree) arbiter.
|
||||||
"""
|
"""
|
||||||
with pytest.raises(KeyboardInterrupt):
|
with pytest.raises(KeyboardInterrupt):
|
||||||
tractor.run(
|
trio.run(
|
||||||
partial(
|
partial(
|
||||||
spawn_and_check_registry,
|
spawn_and_check_registry,
|
||||||
arb_addr,
|
arb_addr,
|
||||||
|
@ -235,8 +241,6 @@ def test_subactors_unregister_on_cancel_remote_daemon(
|
||||||
remote_arbiter=True,
|
remote_arbiter=True,
|
||||||
with_streaming=with_streaming,
|
with_streaming=with_streaming,
|
||||||
),
|
),
|
||||||
# XXX: required to use remote daemon!
|
|
||||||
arbiter_addr=arb_addr
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -258,6 +262,9 @@ async def close_chans_before_nursery(
|
||||||
else:
|
else:
|
||||||
entries_at_end = 1
|
entries_at_end = 1
|
||||||
|
|
||||||
|
async with tractor.open_root_actor(
|
||||||
|
arbiter_addr=arb_addr,
|
||||||
|
):
|
||||||
async with tractor.get_arbiter(*arb_addr) as aportal:
|
async with tractor.get_arbiter(*arb_addr) as aportal:
|
||||||
try:
|
try:
|
||||||
get_reg = partial(aportal.run_from_ns, 'self', 'get_registry')
|
get_reg = partial(aportal.run_from_ns, 'self', 'get_registry')
|
||||||
|
@ -314,15 +321,13 @@ def test_close_channel_explicit(
|
||||||
results in subactor(s) deregistering from the arbiter.
|
results in subactor(s) deregistering from the arbiter.
|
||||||
"""
|
"""
|
||||||
with pytest.raises(KeyboardInterrupt):
|
with pytest.raises(KeyboardInterrupt):
|
||||||
tractor.run(
|
trio.run(
|
||||||
partial(
|
partial(
|
||||||
close_chans_before_nursery,
|
close_chans_before_nursery,
|
||||||
arb_addr,
|
arb_addr,
|
||||||
use_signal,
|
use_signal,
|
||||||
remote_arbiter=False,
|
remote_arbiter=False,
|
||||||
),
|
),
|
||||||
# XXX: required to use remote daemon!
|
|
||||||
arbiter_addr=arb_addr
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -338,13 +343,11 @@ def test_close_channel_explicit_remote_arbiter(
|
||||||
results in subactor(s) deregistering from the arbiter.
|
results in subactor(s) deregistering from the arbiter.
|
||||||
"""
|
"""
|
||||||
with pytest.raises(KeyboardInterrupt):
|
with pytest.raises(KeyboardInterrupt):
|
||||||
tractor.run(
|
trio.run(
|
||||||
partial(
|
partial(
|
||||||
close_chans_before_nursery,
|
close_chans_before_nursery,
|
||||||
arb_addr,
|
arb_addr,
|
||||||
use_signal,
|
use_signal,
|
||||||
remote_arbiter=True,
|
remote_arbiter=True,
|
||||||
),
|
),
|
||||||
# XXX: required to use remote daemon!
|
|
||||||
arbiter_addr=arb_addr
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -113,6 +113,7 @@ class ActorNursery:
|
||||||
name: Optional[str] = None,
|
name: Optional[str] = None,
|
||||||
bind_addr: Tuple[str, int] = _default_bind_addr,
|
bind_addr: Tuple[str, int] = _default_bind_addr,
|
||||||
rpc_module_paths: Optional[List[str]] = None,
|
rpc_module_paths: Optional[List[str]] = None,
|
||||||
|
enable_modules: List[str] = None,
|
||||||
loglevel: str = None, # set log level per subactor
|
loglevel: str = None, # set log level per subactor
|
||||||
**kwargs, # explicit args to ``fn``
|
**kwargs, # explicit args to ``fn``
|
||||||
) -> Portal:
|
) -> Portal:
|
||||||
|
@ -131,7 +132,7 @@ class ActorNursery:
|
||||||
|
|
||||||
portal = await self.start_actor(
|
portal = await self.start_actor(
|
||||||
name,
|
name,
|
||||||
rpc_module_paths=[mod_path] + (rpc_module_paths or []),
|
enable_modules=[mod_path] + (enable_modules or rpc_module_paths or []),
|
||||||
bind_addr=bind_addr,
|
bind_addr=bind_addr,
|
||||||
loglevel=loglevel,
|
loglevel=loglevel,
|
||||||
# use the run_in_actor nursery
|
# use the run_in_actor nursery
|
||||||
|
|
Loading…
Reference in New Issue