Check uploaded asset metadata without assuming completion order
waterfall-wiki CI and deployment / verify-and-deploy (push) Successful in 17m13s

This commit is contained in:
2026-10-27 01:36:37 +08:00
parent ac5e917f75
commit a33151da3c
@@ -107,7 +107,7 @@ test('real PostgreSQL + S3 notes, flat tags, resource sharing and video processi
const secondImage=await sharp({create:{width:160,height:220,channels:3,background:'#d7c7b5'}}).png().toBuffer();
assetsForm.append('files',new Blob([new Uint8Array(secondImage)],{type:'image/png'}),'standalone-b.png');
const uploadedOnly=await fetch(base+'/api/upload',{method:'POST',body:assetsForm});assert.equal(uploadedOnly.status,201,await uploadedOnly.clone().text());
const independent=await uploadedOnly.json();assert.equal(independent.assets.length,2);assert.equal(independent.files[0].filename,'standalone-a.png');
const independent=await uploadedOnly.json();assert.equal(independent.assets.length,2);assert.deepEqual(independent.files.map((file:{filename:string})=>file.filename).sort(),['standalone-a.png','standalone-b.png']);assert.deepEqual(independent.files.map((file:{id:string})=>file.id),independent.assets,'file metadata matches the returned asset IDs');
assert.equal((await db().query('SELECT count(*)::integer AS n FROM posts')).rows[0].n,postCountBefore,'assetOnly never creates a post');
const publicId=note.id;
const apiBody='## 纯文本资料\n\n```json\n{"type":"text","box":[1,2,3,4]}\n```\n\n```tsx\nexport default function Demo(){return <div/>}\n```';