feat(FN-3945): add regression test for bottom snap open transition

Adds a regression test covering the QuickChatFAB open-transition bottom snap behavior.

Fusion-Task-Id: FN-3945
This commit is contained in:
Fusion
2026-05-10 13:45:31 -07:00
committed by gsxdsm
parent e58b0aa830
commit 4f5b0539d7

View File

@@ -646,4 +646,30 @@ describe("QuickChatFAB session-first UX", () => {
expect(scrollTopValue).toBe(1700);
});
});
it("FN-3945: snaps to bottom when opening with an active session already loaded", async () => {
mockFetchChatMessages.mockResolvedValueOnce({
messages: [{ id: "msg-open", sessionId: "session-model", role: "assistant", content: "Loaded", createdAt: new Date().toISOString() }],
});
const { rerender } = render(<QuickChatFAB addToast={vi.fn()} projectId="proj-1" open={false} onOpenChange={vi.fn()} />);
rerender(<QuickChatFAB addToast={vi.fn()} projectId="proj-1" open onOpenChange={vi.fn()} />);
const messages = await screen.findByTestId("quick-chat-messages");
let scrollTopValue = 0;
const scrollHeightValue = 1400;
Object.defineProperty(messages, "scrollHeight", { configurable: true, get: () => scrollHeightValue });
Object.defineProperty(messages, "scrollTop", {
configurable: true,
get: () => scrollTopValue,
set: (value: number) => {
scrollTopValue = value;
},
});
await waitFor(() => {
expect(scrollTopValue).toBe(scrollHeightValue);
});
});
});