test(apps): assert current connection routes

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
DottaandPaperclip committed 2026-08-21 01:55:23 +00:00
1 parent ca1696bfcd
commit 59dcb5f294
2 files changed
+4 -5

No files matched your search

+1 -1
View File
@@ -108,7 +108,7 @@ test.describe.serial("applications lifecycle", () => {
await connectedRow.getByRole("button", { name: /^(Edit|Reconnect)$/ }).click();
await expect(page).toHaveURL(
new RegExp(`/${seed.prefix}/apps/app/${connected.applicationId}/setup$`),
new RegExp(`/${seed.prefix}/apps/${connected.id}/setup$`),
{ timeout: 20_000 },
);
+3 -4
View File
@@ -4,7 +4,7 @@ import { listenOnFetchAllowedPort } from "./fetch-allowed-port";
// prosumer MCP flow — QA harness for the prosumer Connect-an-app flow on top of the
// tool-access foundation. Covers the M-series happy path (gallery + key paste
// → choose actions → who-can-use → success), the expired-key reconnect path,
// → choose access → install → success), the expired-key reconnect path,
// the Needs-attention surface, and a regression check that /apps/advanced
// still mounts.
//
@@ -32,8 +32,7 @@ async function newCompany(request: APIRequestContext, label: string): Promise<Se
// ---- Mock MCP HTTP fixture --------------------------------------------------
// Minimal MCP JSON-RPC server. /catalog refresh hits this with method
// `tools/list`; the gateway calls it with `tools/call`. We expose one
// read-only and one write tool so the wizard can show the Ask-first toggle
// for write actions.
// read-only and one write tool so setup can apply risk-based ask-first defaults.
type MockMcpServer = { url: string; close: () => Promise<void>; captures: Array<{ method: string; params: unknown }> };
@@ -228,7 +227,7 @@ test.describe.serial("prosumer MCP flow prosumer MCP flow", () => {
// Needs-attention page should surface this connection.
await gotoNeedsAttention(page, seed.prefix);
await expect(page.getByRole("heading", { name: "Connections" })).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/app needs attention/i).first()).toBeVisible({ timeout: 30_000 });
await expect(page.getByText(/connection needs attention/i).first()).toBeVisible({ timeout: 30_000 });
await page.screenshot({ path: `${SCREENSHOT_DIR}/prosumer-mcp-07-needs-attention.png`, fullPage: true });
// App detail should expose the reconnect call-to-action.