feat: add Seedance 2.0 models

This commit is contained in:
saturn
2026-04-02 19:16:00 +08:00
parent 9703714b69
commit 71ef6ff818
21 changed files with 811 additions and 38 deletions

View File

@@ -15,21 +15,30 @@ describe('api-config preset coming soon', () => {
expect(model?.name).toBe('Nano Banana 2')
})
it('registers Seedance 2.0 as a coming-soon preset model', () => {
const model = PRESET_MODELS.find(
(entry) => entry.provider === 'ark' && entry.modelId === 'doubao-seedance-2-0-260128',
)
expect(model).toBeDefined()
expect(model?.name).toContain('待上线')
it('registers Seedance 2.0 and Seedance 2.0 Fast as preset video models', () => {
const modelIds = PRESET_MODELS
.filter((entry) => entry.provider === 'ark' && entry.type === 'video')
.map((entry) => entry.modelId)
expect(modelIds).toEqual(expect.arrayContaining([
'doubao-seedance-2-0-260128',
'doubao-seedance-2-0-fast-260128',
]))
})
it('recognizes coming-soon model by provider/modelId and modelKey', () => {
it('does not mark live preset models as coming soon', () => {
const modelKey = encodeModelKey('ark', 'doubao-seedance-2-0-260128')
expect(isPresetComingSoonModel('ark', 'doubao-seedance-2-0-260128')).toBe(true)
expect(isPresetComingSoonModelKey(modelKey)).toBe(true)
expect(isPresetComingSoonModel('ark', 'doubao-seedance-2-0-260128')).toBe(false)
expect(isPresetComingSoonModelKey(modelKey)).toBe(false)
})
it('does not mark normal preset models as coming soon', () => {
const modelKey = encodeModelKey('ark', 'doubao-seedance-2-0-fast-260128')
expect(isPresetComingSoonModel('ark', 'doubao-seedance-2-0-fast-260128')).toBe(false)
expect(isPresetComingSoonModelKey(modelKey)).toBe(false)
})
it('keeps existing live preset models non-coming-soon', () => {
const modelKey = encodeModelKey('ark', 'doubao-seedance-1-5-pro-251215')
expect(isPresetComingSoonModel('ark', 'doubao-seedance-1-5-pro-251215')).toBe(false)
expect(isPresetComingSoonModelKey(modelKey)).toBe(false)