forked from goodboy/tractor
commit
c3b209fa4f
|
@ -289,7 +289,7 @@ def test_multi_subactors(spawn):
|
||||||
assert 'bdb.BdbQuit' in before
|
assert 'bdb.BdbQuit' in before
|
||||||
|
|
||||||
|
|
||||||
def test_multi_daemon_subactors(spawn):
|
def test_multi_daemon_subactors(spawn, loglevel):
|
||||||
"""Multiple daemon subactors, both erroring and breakpointing within a
|
"""Multiple daemon subactors, both erroring and breakpointing within a
|
||||||
stream.
|
stream.
|
||||||
"""
|
"""
|
||||||
|
@ -313,8 +313,15 @@ def test_multi_daemon_subactors(spawn):
|
||||||
before = str(child.before.decode())
|
before = str(child.before.decode())
|
||||||
assert "tractor._exceptions.RemoteActorError: ('name_error'" in before
|
assert "tractor._exceptions.RemoteActorError: ('name_error'" in before
|
||||||
|
|
||||||
|
try:
|
||||||
child.sendline('c')
|
child.sendline('c')
|
||||||
child.expect(pexpect.EOF)
|
child.expect(pexpect.EOF)
|
||||||
|
except pexpect.exceptions.TIMEOUT:
|
||||||
|
# Failed to exit using continue..?
|
||||||
|
|
||||||
|
child.sendline('q')
|
||||||
|
child.expect(pexpect.EOF)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def test_multi_subactors_root_errors(spawn):
|
def test_multi_subactors_root_errors(spawn):
|
||||||
|
@ -362,9 +369,25 @@ def test_multi_nested_subactors_error_through_nurseries(spawn):
|
||||||
|
|
||||||
child = spawn('multi_nested_subactors_error_up_through_nurseries')
|
child = spawn('multi_nested_subactors_error_up_through_nurseries')
|
||||||
|
|
||||||
for _ in range(12):
|
for i in range(12):
|
||||||
|
try:
|
||||||
child.expect(r"\(Pdb\+\+\)")
|
child.expect(r"\(Pdb\+\+\)")
|
||||||
child.sendline('c')
|
child.sendline('c')
|
||||||
|
time.sleep(0.1)
|
||||||
|
|
||||||
|
except (
|
||||||
|
pexpect.exceptions.EOF,
|
||||||
|
pexpect.exceptions.TIMEOUT,
|
||||||
|
):
|
||||||
|
# races all over..
|
||||||
|
|
||||||
|
print(f"Failed early on {i}?")
|
||||||
|
before = str(child.before.decode())
|
||||||
|
|
||||||
|
timed_out_early = True
|
||||||
|
|
||||||
|
# race conditions on how fast the continue is sent?
|
||||||
|
break
|
||||||
|
|
||||||
child.expect(pexpect.EOF)
|
child.expect(pexpect.EOF)
|
||||||
|
|
||||||
|
@ -395,15 +418,13 @@ def test_root_nursery_cancels_before_child_releases_tty_lock(spawn, start_method
|
||||||
time.sleep(0.5)
|
time.sleep(0.5)
|
||||||
try:
|
try:
|
||||||
child.expect(r"\(Pdb\+\+\)")
|
child.expect(r"\(Pdb\+\+\)")
|
||||||
except TimeoutError:
|
|
||||||
if start_method == 'mp':
|
|
||||||
# appears to be some little races that might result in the
|
|
||||||
# last couple acts tearing down early
|
|
||||||
break
|
|
||||||
else:
|
|
||||||
raise
|
|
||||||
|
|
||||||
except pexpect.exceptions.EOF:
|
except (
|
||||||
|
pexpect.exceptions.EOF,
|
||||||
|
pexpect.exceptions.TIMEOUT,
|
||||||
|
):
|
||||||
|
# races all over..
|
||||||
|
|
||||||
print(f"Failed early on {i}?")
|
print(f"Failed early on {i}?")
|
||||||
before = str(child.before.decode())
|
before = str(child.before.decode())
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
Per process state
|
Per process state
|
||||||
"""
|
"""
|
||||||
from typing import Optional, Dict, Any
|
from typing import Optional, Dict, Any
|
||||||
from collections import Mapping
|
from collections.abc import Mapping
|
||||||
import multiprocessing as mp
|
import multiprocessing as mp
|
||||||
|
|
||||||
import trio
|
import trio
|
||||||
|
|
Loading…
Reference in New Issue