diff options
| author | Luke Parker <[email protected]> | 2026-04-30 08:39:19 +1000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-29 22:39:19 +0000 |
| commit | d7b7be1909d614a4022b345bdbeef0c1ec32e159 (patch) | |
| tree | b25640c571a0333b62cf7f06a0ee7ea24b8d3c68 /packages/app/src/context/global-sync/queue.test.ts | |
| parent | a740d2c66782ef3371146cd55d70920ae9b94daf (diff) | |
| download | opencode-d7b7be1909d614a4022b345bdbeef0c1ec32e159.tar.gz opencode-d7b7be1909d614a4022b345bdbeef0c1ec32e159.zip | |
fix(desktop): Path mismatches cause sessions missing + strong ID + existing data fix (#25013)
Diffstat (limited to 'packages/app/src/context/global-sync/queue.test.ts')
| -rw-r--r-- | packages/app/src/context/global-sync/queue.test.ts | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/packages/app/src/context/global-sync/queue.test.ts b/packages/app/src/context/global-sync/queue.test.ts new file mode 100644 index 000000000..c9919855e --- /dev/null +++ b/packages/app/src/context/global-sync/queue.test.ts @@ -0,0 +1,46 @@ +import { describe, expect, test } from "bun:test" +import { createRefreshQueue } from "./queue" +import { directoryKey } from "./utils" + +const tick = () => new Promise((resolve) => setTimeout(resolve, 10)) + +describe("createRefreshQueue", () => { + test("clears queued directories by normalized key", async () => { + const calls: string[] = [] + const queue = createRefreshQueue({ + paused: () => false, + key: directoryKey, + bootstrap: async () => {}, + bootstrapInstance: (directory) => { + calls.push(directory) + }, + }) + + queue.push("C:\\tmp\\demo") + queue.clear("C:/tmp/demo") + + await tick() + + expect(calls).toEqual([]) + queue.dispose() + }) + + test("passes the original directory to bootstrapInstance", async () => { + const calls: string[] = [] + const queue = createRefreshQueue({ + paused: () => false, + key: directoryKey, + bootstrap: async () => {}, + bootstrapInstance: (directory) => { + calls.push(directory) + }, + }) + + queue.push("C:\\tmp\\demo") + + await tick() + + expect(calls).toEqual(["C:\\tmp\\demo"]) + queue.dispose() + }) +}) |
