mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-12 07:20:45 +00:00
test(perf): replace relay fixed sleeps with condition waits
This commit is contained in:
@@ -378,14 +378,10 @@ describe("chrome extension relay server", () => {
|
||||
const ext1Closed = waitForClose(ext1, 2_000);
|
||||
ext1.close();
|
||||
await ext1Closed;
|
||||
|
||||
await new Promise((r) => setTimeout(r, 80));
|
||||
const ext2 = new WebSocket(`ws://127.0.0.1:${port}/extension`, {
|
||||
headers: relayAuthHeaders(`ws://127.0.0.1:${port}/extension`),
|
||||
});
|
||||
await waitForOpen(ext2);
|
||||
|
||||
await new Promise((r) => setTimeout(r, 80));
|
||||
expect(cdpClosed).toBe(false);
|
||||
|
||||
cdp.close();
|
||||
@@ -480,7 +476,7 @@ describe("chrome extension relay server", () => {
|
||||
await ext1Closed;
|
||||
|
||||
cdp.send(JSON.stringify({ id: 41, method: "Runtime.enable" }));
|
||||
await new Promise((r) => setTimeout(r, 80));
|
||||
await new Promise((r) => setTimeout(r, 30));
|
||||
|
||||
const ext2 = new WebSocket(`ws://127.0.0.1:${port}/extension`, {
|
||||
headers: relayAuthHeaders(`ws://127.0.0.1:${port}/extension`),
|
||||
@@ -561,12 +557,17 @@ describe("chrome extension relay server", () => {
|
||||
);
|
||||
|
||||
ext.close();
|
||||
await new Promise((r) => setTimeout(r, 170));
|
||||
|
||||
const version = (await fetch(`${cdpUrl}/json/version`, {
|
||||
headers: relayAuthHeaders(cdpUrl),
|
||||
}).then((r) => r.json())) as { webSocketDebuggerUrl?: string };
|
||||
expect(version.webSocketDebuggerUrl).toBeUndefined();
|
||||
await expect
|
||||
.poll(
|
||||
async () => {
|
||||
const version = (await fetch(`${cdpUrl}/json/version`, {
|
||||
headers: relayAuthHeaders(cdpUrl),
|
||||
}).then((r) => r.json())) as { webSocketDebuggerUrl?: string };
|
||||
return version.webSocketDebuggerUrl === undefined;
|
||||
},
|
||||
{ timeout: 800, interval: 20 },
|
||||
)
|
||||
.toBe(true);
|
||||
});
|
||||
|
||||
it("accepts extension websocket access with relay token query param", async () => {
|
||||
@@ -1019,12 +1020,13 @@ describe("chrome extension relay server", () => {
|
||||
const ext1Closed = waitForClose(ext1, 2_000);
|
||||
ext1.close();
|
||||
await ext1Closed;
|
||||
await new Promise((r) => setTimeout(r, 260));
|
||||
|
||||
const listEmpty = (await fetch(`${cdpUrl}/json/list`, {
|
||||
headers: relayAuthHeaders(cdpUrl),
|
||||
}).then((r) => r.json())) as Array<{ id?: string }>;
|
||||
expect(listEmpty.length).toBe(0);
|
||||
await waitForListMatch(
|
||||
async () =>
|
||||
(await fetch(`${cdpUrl}/json/list`, {
|
||||
headers: relayAuthHeaders(cdpUrl),
|
||||
}).then((r) => r.json())) as Array<{ id?: string }>,
|
||||
(list) => list.length === 0,
|
||||
);
|
||||
|
||||
// Reconnect and re-announce the same tab (simulates reannounceAttachedTabs).
|
||||
const ext2 = new WebSocket(`ws://127.0.0.1:${port}/extension`, {
|
||||
@@ -1103,7 +1105,6 @@ describe("chrome extension relay server", () => {
|
||||
const ext1Closed = waitForClose(ext1, 2_000);
|
||||
ext1.close();
|
||||
await ext1Closed;
|
||||
await new Promise((r) => setTimeout(r, 25));
|
||||
|
||||
// Tab should still be listed during grace period.
|
||||
const listDuringGrace = (await fetch(`${cdpUrl}/json/list`, {
|
||||
|
||||
Reference in New Issue
Block a user