mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
dd06dd89d1
The showcase framework directories better reflect their role as integration examples rather than distributable packages. Renames showcase/packages/ -> showcase/integrations/ and updates the test docker-compose file reference accordingly.
32 lines
1.2 KiB
TypeScript
32 lines
1.2 KiB
TypeScript
import { test, expect } from "@playwright/test";
|
|
|
|
// QA reference: qa/tool-rendering-custom-catchall.md
|
|
// Demo source: src/app/demos/tool-rendering-custom-catchall/page.tsx
|
|
//
|
|
// The page registers a single branded wildcard renderer via
|
|
// `useDefaultRenderTool`. Every Langroid backend tool call paints
|
|
// via the same CustomCatchallRenderer card.
|
|
|
|
test.describe("Tool Rendering — Custom Catch-all (Langroid)", () => {
|
|
test.beforeEach(async ({ page }) => {
|
|
await page.goto("/demos/tool-rendering-custom-catchall");
|
|
});
|
|
|
|
test("page loads with chat input and suggestion pills", async ({ page }) => {
|
|
await expect(page.getByPlaceholder("Type a message")).toBeVisible();
|
|
});
|
|
|
|
test("weather prompt paints the custom catchall card", async ({ page }) => {
|
|
const input = page.getByPlaceholder("Type a message");
|
|
await input.fill("What's the weather in San Francisco?");
|
|
await page.locator('[data-testid="copilot-send-button"]').first().click();
|
|
|
|
const card = page.locator('[data-testid="custom-catchall-card"]').first();
|
|
await expect(card).toBeVisible({ timeout: 60000 });
|
|
|
|
await expect(
|
|
card.locator('[data-testid="custom-catchall-tool-name"]'),
|
|
).toContainText("get_weather");
|
|
});
|
|
});
|