Fix editor regressions and add Blender scene and animated material import
This commit is contained in:
@@ -27,3 +27,16 @@ test('local editor still gives the connected Forma project priority over browser
|
||||
const result=await loadEditorProject({}, {request:async(url)=>Response.json(url==='/api/status'?status:{project}),draft:async()=>{throw Error('Must not read draft');}});
|
||||
assert.equal(result.project.name,project.name);assert.deepEqual(result.status,status);
|
||||
});
|
||||
|
||||
import {editorDraftKey} from '../editor/startup.ts';
|
||||
test('hosted drafts are isolated by publication path and bundled project ID',async()=>{
|
||||
const a=defaultProject(true),b=defaultProject(true);a.id='a';b.id='b';
|
||||
const opts={browserOnly:true,initialProject:a,draftScope:'/demo-a/'};
|
||||
const key=editorDraftKey(opts);const saved=structuredClone(a);saved.name='Edited A';
|
||||
const drafts=new Map([[key,saved]]);const draft=async(key:string)=>drafts.get(key)||null;
|
||||
assert.equal((await loadEditorProject(opts,{draft,request:neverRequest})).project.name,'Edited A');
|
||||
assert.equal((await loadEditorProject({...opts,initialProject:b},{draft,request:neverRequest})).project.name,b.name);
|
||||
assert.equal((await loadEditorProject({...opts,draftScope:'/demo-b/'},{draft,request:neverRequest})).restored,false);
|
||||
assert.notEqual(editorDraftKey({browserOnly:true,initialProject:a},'https://host.test/one/'),editorDraftKey({browserOnly:true,initialProject:a},'https://host.test/two/'));
|
||||
assert.equal(editorDraftKey({}),'active');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user