mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-23 16:36:23 +00:00
refactor: drop platform kwarg, fix PTY test cleanup
- Remove redundant platform= test seam from _terminal_may_leak_cpr(); use monkeypatch.setattr(sys, 'platform', ...) consistently in both test files. - Wrap PTY tests in try/finally for fd cleanup on assertion failure. - Guard select.select() in terminal thread against OSError after fd close (fixes PytestUnhandledThreadExceptionWarning). - Trim PR-number reference from test module docstring.
This commit is contained in:
parent
f6d82e1267
commit
2da64e7840
3 changed files with 99 additions and 79 deletions
|
|
@ -295,17 +295,22 @@ class TestPromptToolkitTerminalCompatibility:
|
|||
Broader coverage (Application wiring + delayed-CPR PTY repro) lives in
|
||||
``tests/cli/test_cpr_local_leak.py``.
|
||||
"""
|
||||
import sys as _sys
|
||||
|
||||
from cli import _terminal_may_leak_cpr
|
||||
|
||||
for var in ("SSH_CONNECTION", "SSH_CLIENT", "SSH_TTY", "PROMPT_TOOLKIT_NO_CPR"):
|
||||
monkeypatch.delenv(var, raising=False)
|
||||
|
||||
assert _terminal_may_leak_cpr(platform="linux") is True
|
||||
assert _terminal_may_leak_cpr(platform="darwin") is True
|
||||
assert _terminal_may_leak_cpr(platform="win32") is False
|
||||
monkeypatch.setattr(_sys, "platform", "linux")
|
||||
assert _terminal_may_leak_cpr() is True
|
||||
monkeypatch.setattr(_sys, "platform", "darwin")
|
||||
assert _terminal_may_leak_cpr() is True
|
||||
monkeypatch.setattr(_sys, "platform", "win32")
|
||||
assert _terminal_may_leak_cpr() is False
|
||||
|
||||
monkeypatch.setenv("PROMPT_TOOLKIT_NO_CPR", "1")
|
||||
assert _terminal_may_leak_cpr(platform="win32") is True
|
||||
assert _terminal_may_leak_cpr() is True
|
||||
|
||||
|
||||
class TestSingleQueryState:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue