


















@@ -53,10 +53,14 @@ describe("tool-cards", () => {
5353container,
5454);
555556-expect(container.textContent).toContain("Tool input");
57-expect(container.textContent).toContain("Tool output");
58-expect(container.textContent).toContain("https://example.com");
59-expect(container.textContent).toContain("Opened page");
56+const blocks = Array.from(container.querySelectorAll(".chat-tool-card__block"));
57+expect(
58+blocks.map((block) => block.querySelector(".chat-tool-card__block-label")?.textContent),
59+).toEqual(["Tool input", "Tool output"]);
60+expect(blocks.map((block) => block.querySelector("code")?.textContent)).toEqual([
61+'{\n "url": "https://example.com"\n}',
62+"Opened page",
63+]);
6064});
61656266it("renders expanded tool calls without an inline output block when no output is present", () => {
@@ -74,10 +78,14 @@ describe("tool-cards", () => {
7478container,
7579);
768077-expect(container.textContent).toContain("Tool input");
78-expect(container.textContent).toContain('"thread": true');
79-expect(container.textContent).not.toContain("Tool output");
80-expect(container.textContent).not.toContain("No output");
81+const blocks = Array.from(container.querySelectorAll(".chat-tool-card__block"));
82+expect(
83+blocks.map((block) => block.querySelector(".chat-tool-card__block-label")?.textContent),
84+).toEqual(["Tool input"]);
85+expect(blocks[0]?.querySelector("code")?.textContent).toBe(
86+'{\n "mode": "session",\n "thread": true\n}',
87+);
88+expect(container.querySelector(".chat-tool-card__block-empty")).toBeNull();
8189});
82908391it("labels collapsed tool calls with the display summary", () => {
@@ -95,10 +103,12 @@ describe("tool-cards", () => {
95103container,
96104);
9710598-expect(container.textContent).toContain("Sessions Spawn");
99-expect(container.textContent).not.toContain("Tool input");
100106const summaryButton = container.querySelector("button.chat-tool-msg-summary");
107+expect(summaryButton?.querySelector(".chat-tool-msg-summary__label")?.textContent).toBe(
108+"Sessions Spawn",
109+);
101110expect(summaryButton?.getAttribute("aria-expanded")).toBe("false");
111+expect(container.querySelector(".chat-tool-msg-body")).toBeNull();
102112});
103113104114it("keeps raw details for legacy canvas tool output without rendering tool-row previews", () => {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。