import { deriveTaskDetailIsFullSet, isTaskDetailFullSetFromAssets, isTaskDetailFullSetFromUploadGroups, } from '@/lib/task-detail-full-set' describe('task-detail full-set rules', () => { test('上传时主图、SKU 图、详情图齐全才算整套', () => { expect( isTaskDetailFullSetFromUploadGroups({ main: [{ id: 1 }], sku: [{ id: 2 }], detail: [{ id: 3 }], }), ).toBe(true) expect( isTaskDetailFullSetFromUploadGroups({ main: [{ id: 1 }], sku: [{ id: 2 }], detail: [], }), ).toBe(false) }) test('历史素材可通过预览图或分类包资产自动识别整套', () => { expect( isTaskDetailFullSetFromAssets([ { assetType: 'main-preview' }, { assetType: 'sku' }, { assetType: 'detail-preview' }, ]), ).toBe(true) expect( isTaskDetailFullSetFromAssets([ { assetType: 'main-preview' }, { assetType: 'detail-preview' }, ]), ).toBe(false) }) test('只有任务-详情类型才使用整套自动判定', () => { expect( deriveTaskDetailIsFullSet( '任务-详情', [ { assetType: 'main-preview' }, { assetType: 'sku-preview' }, { assetType: 'detail-preview' }, ], false, ), ).toBe(true) expect( deriveTaskDetailIsFullSet( '音乐', [ { assetType: 'main-preview' }, { assetType: 'sku-preview' }, { assetType: 'detail-preview' }, ], true, ), ).toBe(false) }) })