15 lines
1.0 KiB
JavaScript
15 lines
1.0 KiB
JavaScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import {applyUploadedStill} from '../shared/studio2/upload.mjs'
|
|
test('uploaded source is selected without changing hero or output',()=>{
|
|
const form={imageAId:'old',identityStillId:'hero',selected:'result',startClipId:'clip',mode:'extend',settings:{aspect:'16:9'}}
|
|
const next=applyUploadedStill(form,{still:{id:'uploaded'}},'source')
|
|
assert.equal(next.imageAId,'uploaded');assert.equal(next.identityStillId,'hero');assert.equal(next.selected,'result');assert.equal(next.startClipId,'clip');assert.equal(next.mode,'extend');assert.equal(next.settings.aspect,'16:9')
|
|
})
|
|
test('uploaded hero changes identity only and missing saves are reported',()=>{
|
|
const form={identityStillId:'old',imageAId:'source',settings:{aspect:'1:1'}}
|
|
const next=applyUploadedStill(form,{still:{id:'hero'}},'hero')
|
|
assert.equal(next.identityStillId,'hero');assert.equal(next.imageAId,'source');assert.equal(next.settings.aspect,'1:1')
|
|
assert.throws(()=>applyUploadedStill(form,{},'hero'),/did not return a saved still/)
|
|
})
|