import asyncio import json from tamq.service import Service from tamq.store import Store def test_incompatible_protocol_rejected(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(b'{"op":"ping","protocol":"2.0"}\n'); await writer.drain() response = json.loads(await reader.readline()) assert response["ok"] is False writer.close(); await writer.wait_closed() finally: server.close(); await server.wait_closed(); service.close() asyncio.run(run())