mirror of
https://github.com/run-llama/llama_deploy.git
synced 2026-07-01 21:04:00 -04:00
40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
import asyncio
|
|
|
|
import pytest
|
|
|
|
from llama_deploy.client import Client
|
|
from llama_deploy.types import QueueMessage
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_roundtrip(mq):
|
|
async def consume():
|
|
async for m in mq.get_messages("test"):
|
|
return m
|
|
|
|
t = asyncio.create_task(consume())
|
|
await asyncio.sleep(1)
|
|
|
|
test_message = QueueMessage(type="test_message", data={"message": "this is a test"})
|
|
await mq.publish(test_message, topic="test")
|
|
|
|
result = await t
|
|
assert result == test_message
|
|
await asyncio.sleep(1)
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_multiple_control_planes(control_planes):
|
|
c1 = Client(control_plane_url="http://localhost:8001")
|
|
c2 = Client(control_plane_url="http://localhost:8002")
|
|
|
|
session = await c1.core.sessions.create()
|
|
r1 = await session.run("basic", arg="Hello One!")
|
|
await c1.core.sessions.delete(session.id)
|
|
assert r1 == "Workflow one received Hello One!"
|
|
|
|
session = await c2.core.sessions.create()
|
|
r2 = await session.run("basic", arg="Hello Two!")
|
|
await c2.core.sessions.delete(session.id)
|
|
assert r2 == "Workflow two received Hello Two!"
|