mirror of
https://github.com/QwenLM/qwen-code.git
synced 2025-12-21 17:27:54 +00:00
Fix: TaskTool Dynamic Updates (#697)
This commit is contained in:
@@ -41,12 +41,14 @@ import type {
|
||||
ToolConfig,
|
||||
} from './types.js';
|
||||
import { SubagentTerminateMode } from './types.js';
|
||||
import { GeminiClient } from '../core/client.js';
|
||||
|
||||
vi.mock('../core/geminiChat.js');
|
||||
vi.mock('../core/contentGenerator.js');
|
||||
vi.mock('../utils/environmentContext.js');
|
||||
vi.mock('../core/nonInteractiveToolExecutor.js');
|
||||
vi.mock('../ide/ide-client.js');
|
||||
vi.mock('../core/client.js');
|
||||
|
||||
async function createMockConfig(
|
||||
toolRegistryMocks = {},
|
||||
@@ -194,6 +196,28 @@ describe('subagent.ts', () => {
|
||||
}) as unknown as GeminiChat,
|
||||
);
|
||||
|
||||
// Mock GeminiClient constructor to return a properly mocked client
|
||||
const mockGeminiChat = {
|
||||
setTools: vi.fn(),
|
||||
getHistory: vi.fn().mockReturnValue([]),
|
||||
setHistory: vi.fn(),
|
||||
sendMessageStream: vi.fn(),
|
||||
};
|
||||
|
||||
const mockGeminiClient = {
|
||||
getChat: vi.fn().mockReturnValue(mockGeminiChat),
|
||||
setTools: vi.fn().mockResolvedValue(undefined),
|
||||
isInitialized: vi.fn().mockReturnValue(true),
|
||||
getHistory: vi.fn().mockReturnValue([]),
|
||||
initialize: vi.fn().mockResolvedValue(undefined),
|
||||
setHistory: vi.fn(),
|
||||
};
|
||||
|
||||
// Mock the GeminiClient constructor
|
||||
vi.mocked(GeminiClient).mockImplementation(
|
||||
() => mockGeminiClient as unknown as GeminiClient,
|
||||
);
|
||||
|
||||
// Default mock for executeToolCall
|
||||
vi.mocked(executeToolCall).mockResolvedValue({
|
||||
callId: 'default-call',
|
||||
|
||||
Reference in New Issue
Block a user