完成渠道模块的单元测试目录搭建,新增多个领域模型、端口、中间件、事件、服务以及基础设施层的单元测试文件,同时补充了conftest.py的环境变量配置,完善测试基础环境。
90 lines
2.6 KiB
Python
90 lines
2.6 KiB
Python
from __future__ import annotations
|
|
|
|
import pytest
|
|
|
|
from yuxi.channel.domain.model.session.channel_session import ChannelSession
|
|
|
|
|
|
class TestChannelSession:
|
|
def test_basic_creation(self):
|
|
session = ChannelSession(
|
|
id=1,
|
|
thread_id="thread123",
|
|
user_id="user1",
|
|
agent_id="1",
|
|
channel_type="web",
|
|
channel_session_key="key1",
|
|
status="active",
|
|
title="Test Session",
|
|
)
|
|
assert session.id == 1
|
|
assert session.thread_id == "thread123"
|
|
assert session.user_id == "user1"
|
|
assert session.agent_id == "1"
|
|
assert session.channel_type == "web"
|
|
assert session.channel_session_key == "key1"
|
|
assert session.status == "active"
|
|
assert session.title == "Test Session"
|
|
|
|
def test_creation_with_none_title(self):
|
|
session = ChannelSession(
|
|
id=1,
|
|
thread_id="thread123",
|
|
user_id="user1",
|
|
agent_id="1",
|
|
channel_type="web",
|
|
channel_session_key="key1",
|
|
status="active",
|
|
title=None,
|
|
)
|
|
assert session.title is None
|
|
|
|
def test_to_dict(self):
|
|
session = ChannelSession(
|
|
id=1,
|
|
thread_id="thread123",
|
|
user_id="user1",
|
|
agent_id="1",
|
|
channel_type="web",
|
|
channel_session_key="key1",
|
|
status="active",
|
|
title="Test Session",
|
|
)
|
|
d = session.to_dict()
|
|
assert d["id"] == 1
|
|
assert d["thread_id"] == "thread123"
|
|
assert d["user_id"] == "user1"
|
|
assert d["agent_id"] == "1"
|
|
assert d["channel_type"] == "web"
|
|
assert d["channel_session_key"] == "key1"
|
|
assert d["status"] == "active"
|
|
assert d["title"] == "Test Session"
|
|
|
|
def test_from_dict(self):
|
|
d = {
|
|
"id": 1,
|
|
"thread_id": "thread123",
|
|
"user_id": "user1",
|
|
"agent_id": "1",
|
|
"channel_type": "web",
|
|
"channel_session_key": "key1",
|
|
"status": "active",
|
|
"title": "Test Session",
|
|
}
|
|
session = ChannelSession.from_dict(d)
|
|
assert session.id == 1
|
|
assert session.thread_id == "thread123"
|
|
assert session.title == "Test Session"
|
|
|
|
def test_default_values(self):
|
|
session = ChannelSession(
|
|
id=1,
|
|
thread_id="thread123",
|
|
user_id="user1",
|
|
agent_id="1",
|
|
channel_type="web",
|
|
channel_session_key="key1",
|
|
status="active",
|
|
)
|
|
assert session.title is None
|