返回 DeepSeek-Reasonix
inbox-recovery-preview.test.ts
根目录 / desktop / frontend / src / __tests__ / inbox-recovery-preview.test.ts
1 // Run: tsx src/__tests__/inbox-recovery-preview.test.ts
2
3 import assert from "node:assert/strict";
4 import { inboxRecoveryPreviewSnapshot, setInboxRecoveryPreviewPaused } from "../lib/inboxRecoveryPreview";
5
6 const paused = inboxRecoveryPreviewSnapshot(true);
7 assert.equal(paused.paused, true);
8 assert.equal(paused.recovered, true);
9 assert.equal(paused.recoveredCount, 30);
10 assert.equal(paused.itemsCount, 30);
11 assert.equal(paused.items.length, 30);
12 assert.equal(paused.bytes, 30 * 1024 * 1024);
13 assert.equal(new Set(paused.items.map((item) => item.id)).size, paused.items.length);
14 assert.ok(paused.items.every((item) => item.state === "uncertain" && item.intent === "followup"));
15
16 const resumed = inboxRecoveryPreviewSnapshot(false);
17 assert.equal(resumed.paused, false);
18 assert.equal(resumed.recovered, true);
19
20 setInboxRecoveryPreviewPaused(false);
21 assert.equal(inboxRecoveryPreviewSnapshot().paused, false);
22 setInboxRecoveryPreviewPaused(true);
23 assert.equal(inboxRecoveryPreviewSnapshot().paused, true);
24
25 process.stdout.write("inbox recovery preview: PASS\n");
26
26 lines TYPESCRIPT