tmux-amq/tests/test_service.py
tegwick 4d915a2617
Some checks failed
tamq-ci / test (push) Failing after 36s
Bootstrap tamq local tmux agent message queue
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a02f34-ead4-7a60-85cd-d7f08e22fa0e
2026-08-24 01:18:40 +02:00

24 lines
1.2 KiB
Python

import asyncio
import json
from tamq.service import Service
from tamq.store import Store
def test_register_and_send(tmp_path):
async def run():
path = tmp_path / "tamq.sock"
service = Service(path, Store(tmp_path / "queue.sqlite3"))
server = await asyncio.start_unix_server(service.handle, path=str(path))
try:
reader, writer = await asyncio.open_unix_connection(str(path))
writer.write((json.dumps({"op": "register", "endpoint_id": "tmux-amq-42", "pid": 42, "session": "tamq", "repos": ["net-kingdom"]}) + "\n").encode()); await writer.drain()
assert json.loads(await reader.readline())["ok"] is True
writer.close(); await writer.wait_closed()
reader, writer = await asyncio.open_unix_connection(str(path))
writer.write(b'{"op":"send","sender_repo":"net-kingdom","target_repo":"railiance-platform","body":"hello"}\n'); await writer.drain()
assert json.loads(await reader.readline())["state"] == "pending"
writer.close(); await writer.wait_closed()
finally:
server.close(); await server.wait_closed(); service.close()
asyncio.run(run())