fix: preserve photo drafts while reopening Today progress
This commit is contained in:
1 parent
9a4a1711fe
commit
4f07402936
2 files changed
+48
-12
No files matched your search
@@ -168,6 +168,35 @@ const drafts = createCoordinator({{store, lanes:{{issue:{{controller}}}}}});
|
||||
assert json.loads(run_node(script)) == ["save:1:first.webp", "restore:second.webp"]
|
||||
|
||||
|
||||
def test_coordinator_clear_does_not_delete_the_durable_draft_during_reopen():
|
||||
script = f"""
|
||||
const createCoordinator = require({json.dumps(str(COORDINATOR))});
|
||||
const records=new Map(); let current=[]; let drafts; const restored=[];
|
||||
const key=target=>target.kind+':'+target.number;
|
||||
const store={{
|
||||
save:async(target,attachments)=>attachments?.length?records.set(key(target),attachments):records.delete(key(target)),
|
||||
load:async target=>records.get(key(target))||null,
|
||||
remove:async target=>records.delete(key(target)),
|
||||
}};
|
||||
const controller={{
|
||||
serialize:async()=>current,
|
||||
restore:value=>{{current=value;restored.push(value[0].filename);}},
|
||||
clear:()=>{{current=[];drafts.checkpoint('today').catch(()=>{{}});}},
|
||||
}};
|
||||
drafts=createCoordinator({{store,lanes:{{today:{{controller}}}}}});
|
||||
const target={{kind:'issue',repository:'stackchain/dashboard',number:1054}};
|
||||
(async()=>{{
|
||||
await drafts.open('today',target);
|
||||
current=[{{filename:'proof.webp',contentType:'image/webp',blob:new Blob(['proof'])}}];
|
||||
await drafts.checkpoint('today');
|
||||
await drafts.switchTo('today',target);
|
||||
await Promise.resolve();
|
||||
process.stdout.write(JSON.stringify({{restored,saved:(await store.load(target))?.[0]?.filename||null}}));
|
||||
}})().catch(error=>{{console.error(error);process.exit(1);}});
|
||||
"""
|
||||
assert json.loads(run_node(script)) == {"restored": ["proof.webp"], "saved": "proof.webp"}
|
||||
|
||||
|
||||
def test_my_work_wires_durable_photo_drafts_into_all_conversation_boundaries():
|
||||
dashboard = DASHBOARD.read_text()
|
||||
html = INDEX.read_text()
|
||||
|
||||
Reference in new issue
Block a user