mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-10 20:54:33 +00:00
perf(test): deflake and speed up qmd manager tests
This commit is contained in:
@@ -177,9 +177,8 @@ describe("QmdMemoryManager", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const resolved = resolveMemoryBackendConfig({ cfg, agentId });
|
const resolved = resolveMemoryBackendConfig({ cfg, agentId });
|
||||||
const createPromise = QmdMemoryManager.create({ cfg, agentId, resolved });
|
const manager = await QmdMemoryManager.create({ cfg, agentId, resolved });
|
||||||
await waitForCondition(() => releaseUpdate !== null, 400);
|
expect(releaseUpdate).not.toBeNull();
|
||||||
const manager = await createPromise;
|
|
||||||
releaseUpdate?.();
|
releaseUpdate?.();
|
||||||
await manager?.close();
|
await manager?.close();
|
||||||
});
|
});
|
||||||
@@ -215,11 +214,12 @@ describe("QmdMemoryManager", () => {
|
|||||||
const resolved = resolveMemoryBackendConfig({ cfg, agentId });
|
const resolved = resolveMemoryBackendConfig({ cfg, agentId });
|
||||||
const createPromise = QmdMemoryManager.create({ cfg, agentId, resolved });
|
const createPromise = QmdMemoryManager.create({ cfg, agentId, resolved });
|
||||||
await waitForCondition(() => releaseUpdate !== null, 400);
|
await waitForCondition(() => releaseUpdate !== null, 400);
|
||||||
const race = await Promise.race([
|
let created = false;
|
||||||
createPromise.then(() => "created" as const),
|
void createPromise.then(() => {
|
||||||
new Promise<"timeout">((resolve) => setTimeout(() => resolve("timeout"), 120)),
|
created = true;
|
||||||
]);
|
});
|
||||||
expect(race).toBe("timeout");
|
await new Promise<void>((resolve) => setImmediate(resolve));
|
||||||
|
expect(created).toBe(false);
|
||||||
releaseUpdate?.();
|
releaseUpdate?.();
|
||||||
const manager = await createPromise;
|
const manager = await createPromise;
|
||||||
await manager?.close();
|
await manager?.close();
|
||||||
@@ -1022,7 +1022,7 @@ async function waitForCondition(check: () => boolean, timeoutMs: number): Promis
|
|||||||
if (check()) {
|
if (check()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await new Promise((resolve) => setTimeout(resolve, 2));
|
await new Promise<void>((resolve) => setImmediate(resolve));
|
||||||
}
|
}
|
||||||
throw new Error("condition was not met in time");
|
throw new Error("condition was not met in time");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user