mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 05:50:43 +00:00
test: merge chat helper render tests
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
/* @vitest-environment jsdom */
|
||||
|
||||
import { render } from "lit";
|
||||
import { afterEach, describe, expect, it } from "vitest";
|
||||
import { afterEach, describe, expect, it, vi } from "vitest";
|
||||
import type { GatewaySessionRow } from "../types.ts";
|
||||
import {
|
||||
getContextNoticeViewModel,
|
||||
renderContextNotice,
|
||||
resetContextNoticeThemeCacheForTest,
|
||||
} from "./context-notice.ts";
|
||||
import { renderSideResult } from "./side-result-render.ts";
|
||||
|
||||
describe("context notice", () => {
|
||||
afterEach(() => {
|
||||
@@ -90,3 +91,52 @@ describe("context notice", () => {
|
||||
).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe("side result render", () => {
|
||||
it("renders, dismisses, and styles BTW side results outside transcript history", () => {
|
||||
const container = document.createElement("div");
|
||||
const onDismissSideResult = vi.fn();
|
||||
|
||||
render(
|
||||
renderSideResult(
|
||||
{
|
||||
kind: "btw",
|
||||
runId: "btw-run-1",
|
||||
sessionKey: "main",
|
||||
question: "what changed?",
|
||||
text: "The web UI now renders **BTW** separately.",
|
||||
isError: false,
|
||||
ts: 2,
|
||||
},
|
||||
onDismissSideResult,
|
||||
),
|
||||
container,
|
||||
);
|
||||
|
||||
expect(container.querySelector(".chat-side-result")).not.toBeNull();
|
||||
expect(container.textContent).toContain("BTW");
|
||||
expect(container.textContent).toContain("what changed?");
|
||||
expect(container.textContent).toContain("Not saved to chat history");
|
||||
expect(container.querySelectorAll(".chat-side-result")).toHaveLength(1);
|
||||
|
||||
const button = container.querySelector<HTMLButtonElement>(".chat-side-result__dismiss");
|
||||
expect(button).not.toBeNull();
|
||||
button?.click();
|
||||
expect(onDismissSideResult).toHaveBeenCalledTimes(1);
|
||||
|
||||
render(
|
||||
renderSideResult({
|
||||
kind: "btw",
|
||||
runId: "btw-run-3",
|
||||
sessionKey: "main",
|
||||
question: "what failed?",
|
||||
text: "The side question could not be answered.",
|
||||
isError: true,
|
||||
ts: 4,
|
||||
}),
|
||||
container,
|
||||
);
|
||||
|
||||
expect(container.querySelector(".chat-side-result--error")).not.toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
/* @vitest-environment jsdom */
|
||||
|
||||
import { render } from "lit";
|
||||
import { describe, expect, it, vi } from "vitest";
|
||||
import { renderSideResult } from "./side-result-render.ts";
|
||||
|
||||
describe("side result render", () => {
|
||||
it("renders, dismisses, and styles BTW side results outside transcript history", () => {
|
||||
const container = document.createElement("div");
|
||||
const onDismissSideResult = vi.fn();
|
||||
|
||||
render(
|
||||
renderSideResult(
|
||||
{
|
||||
kind: "btw",
|
||||
runId: "btw-run-1",
|
||||
sessionKey: "main",
|
||||
question: "what changed?",
|
||||
text: "The web UI now renders **BTW** separately.",
|
||||
isError: false,
|
||||
ts: 2,
|
||||
},
|
||||
onDismissSideResult,
|
||||
),
|
||||
container,
|
||||
);
|
||||
|
||||
expect(container.querySelector(".chat-side-result")).not.toBeNull();
|
||||
expect(container.textContent).toContain("BTW");
|
||||
expect(container.textContent).toContain("what changed?");
|
||||
expect(container.textContent).toContain("Not saved to chat history");
|
||||
expect(container.querySelectorAll(".chat-side-result")).toHaveLength(1);
|
||||
|
||||
const button = container.querySelector<HTMLButtonElement>(".chat-side-result__dismiss");
|
||||
expect(button).not.toBeNull();
|
||||
button?.click();
|
||||
expect(onDismissSideResult).toHaveBeenCalledTimes(1);
|
||||
|
||||
render(
|
||||
renderSideResult({
|
||||
kind: "btw",
|
||||
runId: "btw-run-3",
|
||||
sessionKey: "main",
|
||||
question: "what failed?",
|
||||
text: "The side question could not be answered.",
|
||||
isError: true,
|
||||
ts: 4,
|
||||
}),
|
||||
container,
|
||||
);
|
||||
|
||||
expect(container.querySelector(".chat-side-result--error")).not.toBeNull();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user