ForcePilot/backend/test/unit/channel/startup/test_channel_session.py
Kris 6c95dc006a test: 新增渠道模块全链路单元测试用例与目录结构
完成渠道模块的单元测试目录搭建,新增多个领域模型、端口、中间件、事件、服务以及基础设施层的单元测试文件,同时补充了conftest.py的环境变量配置,完善测试基础环境。
2026-05-30 21:55:35 +08:00

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