tmux-amq/tests/test_control.py
tegwick a4ba6e32e5
Some checks failed
tamq-ci / test (push) Failing after 6s
feat: add conversational replies and stable output
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a03397-4d51-7fd1-8ff2-946eb22ea2bc
2026-08-24 23:03:30 +02:00

29 lines
1 KiB
Python

from tamq import control
from tamq.control import ControlModeClient, shell_quote
from tamq.tmux import shell_join
def test_shell_quote():
quoted = shell_quote("hello 'world'")
assert quoted.startswith("'") and quoted.endswith("'")
assert "\\'" in quoted
def test_tmux_shell_join_quotes_arguments():
assert shell_join(["tamq", "tap", "--repo", "net-kingdom", "--", "codex"]) == "tamq tap --repo net-kingdom -- codex"
def test_pane_tty_is_resolved_through_tmux(monkeypatch):
calls = []
def run(command, **kwargs):
calls.append(command)
return type("Result", (), {"returncode": 0, "stdout": "/dev/pts/7|12|8|24|0\n", "stderr": ""})()
monkeypatch.setattr(control.subprocess, "run", run)
client = ControlModeClient("tamq", tmux_command=("tmux", "-L", "test"))
assert client.pane_tty("tamq:audit-core") == "/dev/pts/7"
assert calls == [[
"tmux", "-L", "test", "display-message", "-p", "-t",
"tamq:audit-core", "#{pane_tty}|#{cursor_x}|#{cursor_y}|#{pane_height}|#{alternate_on}",
]]