diff --git a/package-lock.json b/package-lock.json index 61f0d82c..e5076c4f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14225,6 +14225,7 @@ "winston": "^3.17.0" }, "devDependencies": { + "@google/gemini-cli-test-utils": "file:../test-utils", "@types/express": "^5.0.3", "@types/fs-extra": "^11.0.4", "@types/supertest": "^6.0.3", @@ -14788,7 +14789,9 @@ "version": "0.2.1", "license": "Apache-2.0", "devDependencies": { - "typescript": "^5.3.3" + "@google/gemini-cli-core": "file:../core", + "typescript": "^5.3.3", + "vitest": "^3.1.1" }, "engines": { "node": ">=20" diff --git a/packages/a2a-server/package.json b/packages/a2a-server/package.json index edbd64f1..d8fcc05c 100644 --- a/packages/a2a-server/package.json +++ b/packages/a2a-server/package.json @@ -34,6 +34,7 @@ }, "devDependencies": { "@types/express": "^5.0.3", + "@google/gemini-cli-test-utils": "file:../test-utils", "@types/fs-extra": "^11.0.4", "@types/supertest": "^6.0.3", "@types/tar": "^6.1.13", diff --git a/packages/a2a-server/src/agent.test.ts b/packages/a2a-server/src/agent.test.ts index 4c563179..a683b2ee 100644 --- a/packages/a2a-server/src/agent.test.ts +++ b/packages/a2a-server/src/agent.test.ts @@ -33,7 +33,7 @@ import { assertTaskCreationAndWorkingStatus, createStreamMessageRequest, } from './testing_utils.js'; -import { MockTool } from '@google/gemini-cli-core'; +import { MockTool } from '@google/gemini-cli-test-utils'; const mockToolConfirmationFn = async () => ({}) as unknown as ToolCallConfirmationDetails; diff --git a/packages/cli/src/ui/hooks/useToolScheduler.test.ts b/packages/cli/src/ui/hooks/useToolScheduler.test.ts index 4584cfa3..e95d49a4 100644 --- a/packages/cli/src/ui/hooks/useToolScheduler.test.ts +++ b/packages/cli/src/ui/hooks/useToolScheduler.test.ts @@ -25,13 +25,10 @@ import type { AnyDeclarativeTool, AnyToolInvocation, } from '@google/gemini-cli-core'; -import { - ToolConfirmationOutcome, - ApprovalMode, - MockTool, -} from '@google/gemini-cli-core'; +import { ToolConfirmationOutcome, ApprovalMode } from '@google/gemini-cli-core'; import type { HistoryItemWithoutId, HistoryItemToolGroup } from '../types.js'; import { ToolCallStatus } from '../types.js'; +import { MockTool } from '@google/gemini-cli-test-utils'; // Mocks vi.mock('@google/gemini-cli-core', async () => { diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index c8a2dda1..64732c21 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -106,6 +106,3 @@ export * from './telemetry/index.js'; export { sessionId } from './utils/session.js'; export * from './utils/browser.js'; export { Storage } from './config/storage.js'; - -// Export test utils -export * from './test-utils/index.js'; diff --git a/packages/core/src/test-utils/index.ts b/packages/core/src/test-utils/index.ts deleted file mode 100644 index 6146d39d..00000000 --- a/packages/core/src/test-utils/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2025 Google LLC - * SPDX-License-Identifier: Apache-2.0 - */ - -export * from './mock-tool.js'; diff --git a/packages/test-utils/index.ts b/packages/test-utils/index.ts index d69ad168..3e74d6be 100644 --- a/packages/test-utils/index.ts +++ b/packages/test-utils/index.ts @@ -4,4 +4,4 @@ * SPDX-License-Identifier: Apache-2.0 */ -export * from './src/file-system-test-helpers.js'; +export * from './src/index.js'; diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index 481f186c..fd09763d 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -10,7 +10,9 @@ "typecheck": "tsc --noEmit" }, "devDependencies": { - "typescript": "^5.3.3" + "typescript": "^5.3.3", + "@google/gemini-cli-core": "file:../core", + "vitest": "^3.1.1" }, "engines": { "node": ">=20" diff --git a/packages/test-utils/src/index.ts b/packages/test-utils/src/index.ts index b8af8aa7..4c8efb2e 100644 --- a/packages/test-utils/src/index.ts +++ b/packages/test-utils/src/index.ts @@ -5,3 +5,4 @@ */ export * from './file-system-test-helpers.js'; +export * from './mock-tool.js'; diff --git a/packages/core/src/test-utils/mock-tool.ts b/packages/test-utils/src/mock-tool.ts similarity index 97% rename from packages/core/src/test-utils/mock-tool.ts rename to packages/test-utils/src/mock-tool.ts index 5fb6a6d2..e1e0090a 100644 --- a/packages/core/src/test-utils/mock-tool.ts +++ b/packages/test-utils/src/mock-tool.ts @@ -9,12 +9,12 @@ import type { ToolCallConfirmationDetails, ToolInvocation, ToolResult, -} from '../tools/tools.js'; +} from '@google/gemini-cli-core'; import { BaseDeclarativeTool, BaseToolInvocation, Kind, -} from '../tools/tools.js'; +} from '@google/gemini-cli-core'; type MockToolOptions = { name: string;