Drop `xfail` from `test_moc_reentry_during_teardown`
The per-`ctx_key` locking fix in f086222d intended to resolve the
teardown race reproduced by the new test suite, so the test SHOULD now
pass. TLDR, it doesn't Bp
Also add `collapse_eg()` to the test's ctx-manager stack so that when
run with `pytest <...> --tpdb` we'll actually `pdb`-REPL the RTE when it
hits (previously an assert-error).
(this commit-msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
maybe_open_ctx_locking
parent
f086222d74
commit
03c42e1333
|
|
@ -12,6 +12,7 @@ import trio
|
||||||
import tractor
|
import tractor
|
||||||
from tractor.trionics import (
|
from tractor.trionics import (
|
||||||
maybe_open_context,
|
maybe_open_context,
|
||||||
|
collapse_eg,
|
||||||
)
|
)
|
||||||
from tractor.log import (
|
from tractor.log import (
|
||||||
get_console_log,
|
get_console_log,
|
||||||
|
|
@ -539,17 +540,17 @@ def test_per_ctx_key_resource_lifecycle(
|
||||||
trio.run(main)
|
trio.run(main)
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.xfail(
|
# @pytest.mark.xfail(
|
||||||
reason=(
|
# reason=(
|
||||||
'Demonstrates the `_Cache.run_ctx` teardown race: '
|
# 'Demonstrates the `_Cache.run_ctx` teardown race: '
|
||||||
'a re-entering task hits '
|
# 'a re-entering task hits '
|
||||||
'`assert not resources.get(ctx_key)` because '
|
# '`assert not resources.get(ctx_key)` because '
|
||||||
'`values` was popped but `resources` was not yet '
|
# '`values` was popped but `resources` was not yet '
|
||||||
'(acm `__aexit__` checkpoint in between). '
|
# '(acm `__aexit__` checkpoint in between). '
|
||||||
'Fixed by per-`ctx_key` locking in 9e49eddd.'
|
# 'Fixed by per-`ctx_key` locking in 9e49eddd.'
|
||||||
),
|
# ),
|
||||||
raises=AssertionError,
|
# raises=AssertionError,
|
||||||
)
|
# )
|
||||||
def test_moc_reentry_during_teardown(
|
def test_moc_reentry_during_teardown(
|
||||||
debug_mode: bool,
|
debug_mode: bool,
|
||||||
loglevel: str,
|
loglevel: str,
|
||||||
|
|
@ -621,6 +622,7 @@ def test_moc_reentry_during_teardown(
|
||||||
debug_mode=debug_mode,
|
debug_mode=debug_mode,
|
||||||
loglevel=loglevel,
|
loglevel=loglevel,
|
||||||
),
|
),
|
||||||
|
collapse_eg(),
|
||||||
trio.open_nursery() as tn,
|
trio.open_nursery() as tn,
|
||||||
):
|
):
|
||||||
tn.start_soon(use_and_exit)
|
tn.start_soon(use_and_exit)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue