History

Make the test suite parallel-safe and speed up CI (#1273)

* Make self-host tests CI-safe * Await cloud db teardown * Give local e2e boots more headroom * Keep main CI runs alive * Cache CI dependencies and image layers * Wait for recorded introspection requests in graphql plugin tests * Size self-host test budget for loaded runners * Probe test http servers for readiness before use * Die on recorder wait timeout instead of typing a string error * Type the recorder wait timeout as a tagged error * Update e2e locators for the integration copy renames * Keep stale data rendered while a refresh is waiting * Guard create-org input against hydration clobbering * Match the new sign-in heading in the selfhost callback test

Rhys Sullivan committed 4 months ago

Commit 8652c991 parent 9c7e4a627 files · +252 −102Browse files

Showing the changes to e2e/cloud (1 of 27 files). Show all

Unified · Split

e2e/cloud/auth-routing-flow.test.ts+11−1
@@ -56,7 +56,17 @@ scenario( · 55 unmodified lines
56 });56 });
57 57
58 await step("Create the first org → canonical dashboard at /<slug>", async () => {58 await step("Create the first org → canonical dashboard at /<slug>", async () => {
59 await page.getByPlaceholder("Northwind Labs").fill("Flow Test Org");59 const orgName = "Flow Test Org";
60 const orgNameInput = page.getByPlaceholder("Northwind Labs");
61 await page.waitForLoadState("networkidle");
62 await orgNameInput.fill(orgName);
63 await page.waitForTimeout(250);
64 if ((await orgNameInput.inputValue()) !== orgName) {
65 await orgNameInput.fill(orgName);
66 }
67 expect(await orgNameInput.inputValue(), "org name survives create-org hydration").toBe(
68 orgName,
69 );
60 await page.getByRole("button", { name: "Create organization" }).click();70 await page.getByRole("button", { name: "Create organization" }).click();
61 await page.getByText("Connect your MCP client").waitFor({ timeout: 30_000 });71 await page.getByText("Connect your MCP client").waitFor({ timeout: 30_000 });
62 await page.getByRole("button", { name: "Continue to app" }).click();72 await page.getByRole("button", { name: "Continue to app" }).click();