Files
waooplus/tests/unit/generators/factory.test.ts
2026-03-08 17:10:06 +08:00

23 lines
1.2 KiB
TypeScript

import { describe, expect, it } from 'vitest'
import { createAudioGenerator, createImageGenerator, createVideoGenerator } from '@/lib/generators/factory'
import { GoogleVeoVideoGenerator } from '@/lib/generators/video/google'
import { OpenAICompatibleVideoGenerator } from '@/lib/generators/video/openai-compatible'
import { BailianAudioGenerator, BailianImageGenerator, BailianVideoGenerator, SiliconFlowAudioGenerator } from '@/lib/generators/official'
describe('generator factory', () => {
it('routes gemini-compatible video provider to Google video generator', () => {
const generator = createVideoGenerator('gemini-compatible:gm-1')
expect(generator).toBeInstanceOf(GoogleVeoVideoGenerator)
})
it('routes bailian official providers to official generators', () => {
expect(createImageGenerator('bailian')).toBeInstanceOf(BailianImageGenerator)
expect(createVideoGenerator('bailian')).toBeInstanceOf(BailianVideoGenerator)
expect(createAudioGenerator('bailian')).toBeInstanceOf(BailianAudioGenerator)
})
it('routes siliconflow audio provider to official generator', () => {
expect(createAudioGenerator('siliconflow')).toBeInstanceOf(SiliconFlowAudioGenerator)
})
})