From f4e29c1c74c353b1fbfd1f59a235fb618f2a52bd Mon Sep 17 00:00:00 2001 From: Ishaan Jaffer Date: Wed, 6 May 2026 15:09:14 -0700 Subject: [PATCH] test(e2e/agents): add create-agent spec for Validation #2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Open New Agent dialog, fill name + model, submit; assert the new row shows up in the table within 5s. Definition only — no VM. --- .../tests/agents/create-agent.spec.ts | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 ui/litellm-dashboard/e2e_tests/tests/agents/create-agent.spec.ts diff --git a/ui/litellm-dashboard/e2e_tests/tests/agents/create-agent.spec.ts b/ui/litellm-dashboard/e2e_tests/tests/agents/create-agent.spec.ts new file mode 100644 index 00000000000..d90cfba61b3 --- /dev/null +++ b/ui/litellm-dashboard/e2e_tests/tests/agents/create-agent.spec.ts @@ -0,0 +1,26 @@ +/** + * LIT-2881 Validation #2 — Create an Agent definition flow. + * + * Click + New Agent, fill name/model/system_prompt, submit; the new row + * appears in the /agents list within 5s. Definition only — no VM. + */ +import { test, expect } from "@playwright/test"; +import { gotoAgentsList } from "./_helpers"; + +test("create new agent definition appears in list", async ({ page }) => { + await gotoAgentsList(page); + await page.getByTestId("new-agent-btn").click(); + const dialog = page.getByTestId("new-agent-dialog"); + await expect(dialog).toBeVisible(); + + const nameInput = page.getByTestId("new-agent-name").locator("input"); + const modelInput = page.getByTestId("new-agent-model").locator("input"); + await nameInput.fill("e2e-test-agent"); + await modelInput.fill("claude-3-5-sonnet-20241022"); + + await page.getByRole("button", { name: "Create" }).click(); + await expect(dialog).not.toBeVisible({ timeout: 5_000 }); + + // appears in the list (within 5s) + await expect(page.getByText("e2e-test-agent")).toBeVisible({ timeout: 5_000 }); +});