21 lines
866 B
TypeScript
21 lines
866 B
TypeScript
import { render, screen } from "@testing-library/react";
|
|
import userEvent from "@testing-library/user-event";
|
|
import { beforeEach, vi } from "vitest";
|
|
import { useSessionStore } from "../store/sessionStore";
|
|
import { ModelActivityPanel } from "./ModelActivityPanel";
|
|
|
|
beforeEach(() => useSessionStore.getState().resetSession());
|
|
|
|
test("renders the streamed model transcript", () => {
|
|
useSessionStore.getState().applyEvent({ type: "text_delta", text: "Promoting table dim_patient." });
|
|
render(<ModelActivityPanel onClose={vi.fn()} />);
|
|
expect(screen.getByText(/Promoting table dim_patient/)).toBeInTheDocument();
|
|
});
|
|
|
|
test("close button calls onClose", async () => {
|
|
const onClose = vi.fn();
|
|
render(<ModelActivityPanel onClose={onClose} />);
|
|
await userEvent.click(screen.getByRole("button", { name: /close/i }));
|
|
expect(onClose).toHaveBeenCalled();
|
|
});
|