fix(core): 修复测试用例以匹配最新实现

- todo-manager.test: 修复空日期字符串导致的 Invalid time value 错误
- config-loader.test: 更新测试以匹配简化后的配置加载逻辑
- mcp/config.test: 修复配置路径匹配问题
- task.test/task-extended.test: 添加缺失的 agentEventEmitter mock
- presets/index.test: 更新预设 Agent 数量和 maxSteps 测试
- agent.test: 添加缺失的 mock 函数并修正模式切换测试
- 删除过时的 session/manager.test 和 storage.test (使用已废弃的 API)
This commit is contained in:
2025-12-16 22:33:46 +08:00
parent 66ad1a1ec9
commit eb80b2c9e6
9 changed files with 74 additions and 932 deletions
+20 -5
View File
@@ -39,6 +39,7 @@ vi.mock('../../../src/agent/index.js', () => ({
agentRegistry: {
get: vi.fn(),
getInternal: vi.fn(() => null), // Returns null by default - no summary agent configured
listSubagents: vi.fn(() => []), // For task tool description
},
AgentExecutor: vi.fn().mockImplementation(() => ({
execute: vi.fn().mockResolvedValue({
@@ -48,6 +49,15 @@ vi.mock('../../../src/agent/index.js', () => ({
sessionId: 'test',
}),
})),
agentEventEmitter: {
emit: vi.fn(),
on: vi.fn(),
off: vi.fn(),
},
createToolDescriptionContext: vi.fn(() => ({
render: vi.fn((template: string) => template),
})),
renderPromptTemplate: vi.fn((template: string) => template),
}));
// Mock vision and summary config
@@ -224,20 +234,22 @@ describe('Agent', () => {
expect(agent.getAgentModeName()).toBe('explore');
});
it('切换 Agent 时更新 system prompt', () => {
it('切换 Agent 时更新 agent mode', () => {
agent.setAgentMode(exploreAgent);
expect(agent.getConfig().systemPrompt).toBe('You are an explore agent.');
// getConfig 返回原始配置,不会因为 mode 切换而改变
// 实际的 system prompt 由内部 modeManager 管理
expect(agent.getAgentMode()).toBe(exploreAgent);
});
it('切换回 default 时恢复原始 prompt', () => {
it('切换回 default 时恢复默认模式', () => {
agent.setAgentMode(exploreAgent);
agent.setAgentMode(null);
expect(agent.getAgentModeName()).toBe('default');
expect(agent.getConfig().systemPrompt).toBe('You are a helpful assistant.');
expect(agent.getAgentMode()).toBeNull();
});
it('Agent 没有自定义 prompt 时保持原始 prompt', () => {
it('Agent 没有自定义 prompt 时保持配置不变', () => {
const agentWithoutPrompt: AgentInfo = {
name: 'simple',
description: 'Simple agent',
@@ -245,7 +257,10 @@ describe('Agent', () => {
};
agent.setAgentMode(agentWithoutPrompt);
// 原始配置保持不变
expect(agent.getConfig().systemPrompt).toBe('You are a helpful assistant.');
// 但 agent mode 已改变
expect(agent.getAgentModeName()).toBe('simple');
});
});