mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-08 04:11:22 +00:00
perf(test): replace reconnect polling sleeps with waitFor
This commit is contained in:
@@ -105,19 +105,18 @@ describe("web auto-reply", () => {
|
|||||||
expect(listenerFactory).toHaveBeenCalledTimes(1);
|
expect(listenerFactory).toHaveBeenCalledTimes(1);
|
||||||
|
|
||||||
closeResolvers[0]?.();
|
closeResolvers[0]?.();
|
||||||
const waitForSecondCall = async () => {
|
await vi.waitFor(
|
||||||
const started = Date.now();
|
() => {
|
||||||
while (listenerFactory.mock.calls.length < 2 && Date.now() - started < 200) {
|
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
||||||
await new Promise((resolve) => setTimeout(resolve, 10));
|
},
|
||||||
}
|
{ timeout: 500, interval: 5 },
|
||||||
};
|
);
|
||||||
await waitForSecondCall();
|
|
||||||
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
||||||
expect(runtime.error).toHaveBeenCalledWith(expect.stringContaining("Retry 1"));
|
expect(runtime.error).toHaveBeenCalledWith(expect.stringContaining("Retry 1"));
|
||||||
|
|
||||||
controller.abort();
|
controller.abort();
|
||||||
closeResolvers[1]?.();
|
closeResolvers[1]?.();
|
||||||
await new Promise((resolve) => setTimeout(resolve, 5));
|
await Promise.resolve();
|
||||||
await run;
|
await run;
|
||||||
});
|
});
|
||||||
it("forces reconnect when watchdog closes without onClose", async () => {
|
it("forces reconnect when watchdog closes without onClose", async () => {
|
||||||
@@ -219,11 +218,15 @@ describe("web auto-reply", () => {
|
|||||||
expect(listenerFactory).toHaveBeenCalledTimes(1);
|
expect(listenerFactory).toHaveBeenCalledTimes(1);
|
||||||
|
|
||||||
closeResolvers.shift()?.();
|
closeResolvers.shift()?.();
|
||||||
await new Promise((resolve) => setTimeout(resolve, 15));
|
await vi.waitFor(
|
||||||
|
() => {
|
||||||
|
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
||||||
|
},
|
||||||
|
{ timeout: 500, interval: 5 },
|
||||||
|
);
|
||||||
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
expect(listenerFactory).toHaveBeenCalledTimes(2);
|
||||||
|
|
||||||
closeResolvers.shift()?.();
|
closeResolvers.shift()?.();
|
||||||
await new Promise((resolve) => setTimeout(resolve, 15));
|
|
||||||
await run;
|
await run;
|
||||||
|
|
||||||
expect(runtime.error).toHaveBeenCalledWith(expect.stringContaining("max attempts reached"));
|
expect(runtime.error).toHaveBeenCalledWith(expect.stringContaining("max attempts reached"));
|
||||||
|
|||||||
Reference in New Issue
Block a user