From 73dae0d10f63c4fd95a1719d0c57e3393d434858 Mon Sep 17 00:00:00 2001 From: josh <144584931+dancer@users.noreply.github.com> Date: Mon, 8 Sep 2025 16:27:32 +0100 Subject: [PATCH] fix: replace test models with lightweight mocks to resolve module errors (#1164) --- lib/ai/models.mock.ts | 38 ++++++++++++++++++++++++++++++++++++++ lib/ai/providers.ts | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 lib/ai/models.mock.ts diff --git a/lib/ai/models.mock.ts b/lib/ai/models.mock.ts new file mode 100644 index 0000000..97ce212 --- /dev/null +++ b/lib/ai/models.mock.ts @@ -0,0 +1,38 @@ +import { type LanguageModel } from 'ai'; + +const createMockModel = (): LanguageModel => { + return { + specificationVersion: 'v2', + provider: 'mock', + modelId: 'mock-model', + defaultObjectGenerationMode: 'tool', + supportedUrls: [], + supportsImageUrls: false, + supportsStructuredOutputs: false, + doGenerate: async () => ({ + rawCall: { rawPrompt: null, rawSettings: {} }, + finishReason: 'stop', + usage: { inputTokens: 10, outputTokens: 20, totalTokens: 30 }, + content: [{ type: 'text', text: 'Hello, world!' }], + warnings: [], + }), + doStream: async () => ({ + stream: new ReadableStream({ + start(controller) { + controller.enqueue({ + type: 'text-delta', + id: 'mock-id', + delta: 'Mock response', + }); + controller.close(); + }, + }), + rawCall: { rawPrompt: null, rawSettings: {} }, + }), + } as unknown as LanguageModel; +}; + +export const chatModel = createMockModel(); +export const reasoningModel = createMockModel(); +export const titleModel = createMockModel(); +export const artifactModel = createMockModel(); \ No newline at end of file diff --git a/lib/ai/providers.ts b/lib/ai/providers.ts index edeade7..578fa08 100644 --- a/lib/ai/providers.ts +++ b/lib/ai/providers.ts @@ -13,7 +13,7 @@ export const myProvider = isTestEnvironment chatModel, reasoningModel, titleModel, - } = require('./models.test'); + } = require('./models.mock'); return customProvider({ languageModels: { 'chat-model': chatModel,