diff --git a/packages/backend/server/src/plugins/copilot/providers/openai.ts b/packages/backend/server/src/plugins/copilot/providers/openai.ts index b3f5b11ce6199..21ef0eea5ebd6 100644 --- a/packages/backend/server/src/plugins/copilot/providers/openai.ts +++ b/packages/backend/server/src/plugins/copilot/providers/openai.ts @@ -5,7 +5,6 @@ import { ClientOptions, OpenAI } from 'openai'; import { ChatMessageRole, CopilotCapability, - CopilotImageToImageProvider, CopilotImageToTextProvider, CopilotProviderType, CopilotTextToEmbeddingProvider, @@ -23,7 +22,6 @@ export class OpenAIProvider CopilotTextToTextProvider, CopilotTextToEmbeddingProvider, CopilotTextToImageProvider, - CopilotImageToImageProvider, CopilotImageToTextProvider { static readonly type = CopilotProviderType.OpenAI; @@ -31,7 +29,6 @@ export class OpenAIProvider CopilotCapability.TextToText, CopilotCapability.TextToEmbedding, CopilotCapability.TextToImage, - CopilotCapability.ImageToImage, CopilotCapability.ImageToText, ]; diff --git a/packages/backend/server/tests/copilot.spec.ts b/packages/backend/server/tests/copilot.spec.ts index 58a2a3258ed8b..ae8bdce4374df 100644 --- a/packages/backend/server/tests/copilot.spec.ts +++ b/packages/backend/server/tests/copilot.spec.ts @@ -19,7 +19,7 @@ import { CopilotProviderType, } from '../src/plugins/copilot/types'; import { createTestingModule } from './utils'; -import { TestProvider } from './utils/copilot'; +import { MockCopilotTestProvider } from './utils/copilot'; const test = ava as TestFn<{ auth: AuthService; @@ -402,11 +402,15 @@ test('should be able to get provider', async t => { test('should be able to register test provider', async t => { const { provider } = t.context; - registerCopilotProvider(TestProvider); + registerCopilotProvider(MockCopilotTestProvider); const assertProvider = (cap: CopilotCapability) => { const p = provider.getProviderByCapability(cap, 'test'); - t.is(p?.type, CopilotProviderType.Test, 'should get test provider'); + t.is( + p?.type, + CopilotProviderType.Test, + `should get test provider with ${cap}` + ); }; assertProvider(CopilotCapability.TextToText); diff --git a/packages/backend/server/tests/utils/copilot.ts b/packages/backend/server/tests/utils/copilot.ts index 938cea2930628..18df53783dd5a 100644 --- a/packages/backend/server/tests/utils/copilot.ts +++ b/packages/backend/server/tests/utils/copilot.ts @@ -9,6 +9,7 @@ import { } from '../../src/plugins/copilot/providers/openai'; import { CopilotCapability, + CopilotImageToImageProvider, CopilotImageToTextProvider, CopilotProviderType, CopilotTextToEmbeddingProvider, @@ -19,22 +20,30 @@ import { import { gql } from './common'; import { handleGraphQLError } from './utils'; -export class TestProvider +export class MockCopilotTestProvider extends OpenAIProvider implements CopilotTextToTextProvider, CopilotTextToEmbeddingProvider, CopilotTextToImageProvider, + CopilotImageToImageProvider, CopilotImageToTextProvider { override readonly availableModels = ['test']; + static override readonly capabilities = [ + CopilotCapability.TextToText, + CopilotCapability.TextToEmbedding, + CopilotCapability.TextToImage, + CopilotCapability.ImageToImage, + CopilotCapability.ImageToText, + ]; override get type(): CopilotProviderType { return CopilotProviderType.Test; } override getCapabilities(): CopilotCapability[] { - return TestProvider.capabilities; + return MockCopilotTestProvider.capabilities; } override isModelAvailable(model: string): boolean {