mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-24 19:35:28 -06:00
perf(test): speed up board provider snapshot observations (#127163)
This commit is contained in:
committed by
GitHub
parent
096a970820
commit
cb563bb16d
@@ -1,5 +1,6 @@
|
||||
// @vitest-environment node
|
||||
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
||||
import { waitForFast } from "../../test-helpers/wait-for.ts";
|
||||
import { GatewayBoardProvider } from "./gateway-provider.ts";
|
||||
import { registerBoardProviderLeaseCases } from "./provider.lease-cases.test-support.ts";
|
||||
import {
|
||||
@@ -102,7 +103,7 @@ describe("board providers", () => {
|
||||
);
|
||||
|
||||
try {
|
||||
await vi.waitFor(() => expect(writable.provider.snapshot$.value).toEqual(snapshot));
|
||||
await waitForFast(() => expect(writable.provider.snapshot$.value).toEqual(snapshot));
|
||||
|
||||
writable.update(client, true, {
|
||||
canPinWidgets: false,
|
||||
@@ -181,7 +182,7 @@ describe("board providers", () => {
|
||||
);
|
||||
|
||||
try {
|
||||
await vi.waitFor(() => expect(lease.provider.snapshot$.value).toEqual(snapshot));
|
||||
await waitForFast(() => expect(lease.provider.snapshot$.value).toEqual(snapshot));
|
||||
await expect(lease.provider.applyOps([])).rejects.toThrow();
|
||||
await expect(lease.provider.pinWidget({ docId: "cv-upgraded" })).rejects.toThrow();
|
||||
await expect(lease.provider.pinMcpApp({ viewId: "app-upgraded" })).rejects.toThrow();
|
||||
@@ -272,7 +273,7 @@ describe("board providers", () => {
|
||||
const cached = boardProviderForSession(sessionKey);
|
||||
|
||||
try {
|
||||
await vi.waitFor(() => expect(writer.provider.snapshot$.value).toEqual(previousSnapshot));
|
||||
await waitForFast(() => expect(writer.provider.snapshot$.value).toEqual(previousSnapshot));
|
||||
|
||||
writer.update(nextClient, true, {
|
||||
canPinWidgets: true,
|
||||
@@ -281,7 +282,7 @@ describe("board providers", () => {
|
||||
canGrant: false,
|
||||
});
|
||||
|
||||
await vi.waitFor(() => expect(writer.provider.snapshot$.value).toEqual(nextSnapshot));
|
||||
await waitForFast(() => expect(writer.provider.snapshot$.value).toEqual(nextSnapshot));
|
||||
expect(approver.provider.snapshot$.value).toEqual(nextSnapshot);
|
||||
expect(boardProviderForSession(sessionKey)).toBe(cached);
|
||||
expect(removePreviousListener).toHaveBeenCalledOnce();
|
||||
@@ -318,7 +319,7 @@ describe("board providers", () => {
|
||||
},
|
||||
};
|
||||
const first = acquireBoardProviderForSession(snapshot.sessionKey, client as never);
|
||||
await vi.waitFor(() => expect(first.provider.snapshot$.value).toEqual(snapshot));
|
||||
await waitForFast(() => expect(first.provider.snapshot$.value).toEqual(snapshot));
|
||||
const command = vi.fn();
|
||||
first.provider.events.subscribe(command);
|
||||
|
||||
@@ -342,7 +343,7 @@ describe("board providers", () => {
|
||||
|
||||
const second = acquireBoardProviderForSession(snapshot.sessionKey, client as never);
|
||||
expect(second.provider).not.toBe(first.provider);
|
||||
await vi.waitFor(() => expect(second.provider.snapshot$.value).toEqual(snapshot));
|
||||
await waitForFast(() => expect(second.provider.snapshot$.value).toEqual(snapshot));
|
||||
expect(listeners.size).toBe(1);
|
||||
second.release();
|
||||
expect(listeners.size).toBe(0);
|
||||
@@ -370,7 +371,7 @@ describe("board providers", () => {
|
||||
expect(sessionHasBoard(sessionKey)).toBe(true);
|
||||
|
||||
resolveSnapshot?.(emptySnapshot);
|
||||
await vi.waitFor(() => expect(lease.provider.snapshot$.value).toEqual(emptySnapshot));
|
||||
await waitForFast(() => expect(lease.provider.snapshot$.value).toEqual(emptySnapshot));
|
||||
|
||||
expect(hasLoadedBoardSnapshot(lease.provider)).toBe(true);
|
||||
expect(sessionHasBoard(sessionKey)).toBe(false);
|
||||
@@ -610,7 +611,7 @@ describe("board providers", () => {
|
||||
return () => {};
|
||||
},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value.revision).toBe(1));
|
||||
await waitForFast(() => expect(provider.snapshot$.value.revision).toBe(1));
|
||||
|
||||
listener?.({
|
||||
event: "board.changed",
|
||||
@@ -679,7 +680,7 @@ describe("board providers", () => {
|
||||
return () => {};
|
||||
},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(initial));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(initial));
|
||||
|
||||
listener?.({
|
||||
event: "board.changed",
|
||||
@@ -766,7 +767,7 @@ describe("board providers", () => {
|
||||
return () => {};
|
||||
},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
|
||||
listener?.({
|
||||
event: "board.changed",
|
||||
@@ -821,7 +822,7 @@ describe("board providers", () => {
|
||||
return () => {};
|
||||
},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
|
||||
listener?.({
|
||||
event: "board.changed",
|
||||
@@ -873,7 +874,7 @@ describe("board providers", () => {
|
||||
request: request as never,
|
||||
addEventListener: () => () => {},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
|
||||
const olderMutation = provider.applyOps([{ kind: "tab_delete", tabId: "main" }]);
|
||||
const newerMutation = provider.applyOps([
|
||||
@@ -925,7 +926,7 @@ describe("board providers", () => {
|
||||
request: request as never,
|
||||
addEventListener: () => () => {},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(populated));
|
||||
|
||||
const refresh = provider.activate();
|
||||
await vi.waitFor(() => expect(getCount).toBe(2));
|
||||
@@ -988,7 +989,7 @@ describe("board providers", () => {
|
||||
request: request as never,
|
||||
addEventListener: () => () => {},
|
||||
});
|
||||
await vi.waitFor(() => expect(provider.snapshot$.value).toEqual(initial));
|
||||
await waitForFast(() => expect(provider.snapshot$.value).toEqual(initial));
|
||||
|
||||
const refresh = provider.refreshWidgetFrame("alpha");
|
||||
await vi.waitFor(() => expect(getCount).toBe(2));
|
||||
|
||||
Reference in New Issue
Block a user