diff --git a/canvas/src/app/__tests__/orgs-page.test.tsx b/canvas/src/app/__tests__/orgs-page.test.tsx index 03acad08..0b4d1e94 100644 --- a/canvas/src/app/__tests__/orgs-page.test.tsx +++ b/canvas/src/app/__tests__/orgs-page.test.tsx @@ -131,13 +131,10 @@ describe("/orgs — error state", () => { Promise.reject(new Error("GET /cp/orgs: 500")) ); render(); - await vi.advanceTimersByTimeAsync(50); - // After the setTimeout(0, fetchOrgs) fires and the mockFetch rejection - // propagates, React's setError schedules a state update. runAllTimersAsync - // flushes any pending effects or state updates that depend on microtask - // completion. - await vi.runAllTimersAsync(); - expect(screen.getByText(/Error:/)).toBeTruthy(); + // PR #1243 replaced waitFor polling with vi.advanceTimersByTimeAsync(50), + // which fires the timer but does not guarantee React render flush completes + // before the assertion runs. Restores waitFor for the error-state test. + await waitFor(() => expect(screen.getByText(/Error:/)).toBeTruthy()); expect(screen.getByRole("button", { name: /retry/i })).toBeTruthy(); }); }); diff --git a/canvas/src/components/__tests__/ContextMenu.keyboard.test.tsx b/canvas/src/components/__tests__/ContextMenu.keyboard.test.tsx index c4c973a4..291e982d 100644 --- a/canvas/src/components/__tests__/ContextMenu.keyboard.test.tsx +++ b/canvas/src/components/__tests__/ContextMenu.keyboard.test.tsx @@ -49,8 +49,11 @@ const mockStore = { }; vi.mock("@/store/canvas", () => ({ - useCanvasStore: vi.fn( - (selector: (s: typeof mockStore) => unknown) => selector(mockStore) + // PR #1243 refactored delete flow: hoists confirmation to Canvas-level dialog + // via setPendingDelete, including hasChildren for correct warning text. + useCanvasStore: Object.assign( + vi.fn((selector: (s: typeof mockStore) => unknown) => selector(mockStore)), + { getState: () => mockStore } ), }));