diff --git a/apps/web/playwright/lib/testUtils.ts b/apps/web/playwright/lib/testUtils.ts index a7ec3b62ee..57c04a2d54 100644 --- a/apps/web/playwright/lib/testUtils.ts +++ b/apps/web/playwright/lib/testUtils.ts @@ -275,11 +275,17 @@ export async function getInviteLink(page: Page) { export async function getEmailsReceivedByUser({ emails, userEmail, + waitForEmailMs = 5000, }: { emails?: ReturnType; userEmail: string; + waitForEmailMs?: number; }): Promise { if (!emails) return null; + + // Wait for email to be sent/received + await new Promise((resolve) => setTimeout(resolve, waitForEmailMs)); + const matchingEmails = await emails.search(userEmail, "to"); if (!matchingEmails?.total) { console.log( diff --git a/apps/web/playwright/organization/expects.ts b/apps/web/playwright/organization/expects.ts index 901e306440..65a12be1d4 100644 --- a/apps/web/playwright/organization/expects.ts +++ b/apps/web/playwright/organization/expects.ts @@ -15,9 +15,6 @@ export async function expectInvitationEmailToBeReceived( returnLink?: string ) { if (!emails) return null; - // We need to wait for the email to go through, otherwise it will fail - // eslint-disable-next-line playwright/no-wait-for-timeout - await page.waitForTimeout(2000); const receivedEmails = await getEmailsReceivedByUser({ emails, userEmail }); expect(receivedEmails?.total).toBe(1); const [firstReceivedEmail] = (receivedEmails as Messages).items; diff --git a/apps/web/playwright/signup.e2e.ts b/apps/web/playwright/signup.e2e.ts index a4636fdad7..e637cef135 100644 --- a/apps/web/playwright/signup.e2e.ts +++ b/apps/web/playwright/signup.e2e.ts @@ -295,10 +295,6 @@ test.describe("Email Signup Flow Test", async () => { userEmail: userToCreate.email, }); - // We need to wait for emails to be sent - // eslint-disable-next-line playwright/no-wait-for-timeout - await page.waitForTimeout(5000); - expect(receivedEmails?.total).toBe(1); const verifyEmail = receivedEmails?.items[0]; diff --git a/apps/web/playwright/team/expects.ts b/apps/web/playwright/team/expects.ts index 2e29c84549..09ce139971 100644 --- a/apps/web/playwright/team/expects.ts +++ b/apps/web/playwright/team/expects.ts @@ -15,7 +15,6 @@ export async function expectInvitationEmailToBeReceived( ) { if (!emails) return null; - await page.waitForTimeout(2000); const receivedEmails = await getEmailsReceivedByUser({ emails, userEmail }); expect(receivedEmails?.total).toBe(1); diff --git a/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts b/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts index 40ab97415f..76b58a5e26 100644 --- a/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts +++ b/packages/app-store/routing-forms/playwright/tests/basic.e2e.ts @@ -947,8 +947,6 @@ test.describe("Routing Forms", () => { const newUser = await addNewUserToTeam({ users, teamId }); await goToRoutingLinkAndSubmit({ page, formId }); - // eslint-disable-next-line playwright/no-wait-for-timeout - await page.waitForTimeout(2000); const receivedEmailsOwner = await getEmailsReceivedByUser({ emails, userEmail: owner.email }); expect(receivedEmailsOwner?.total).toBe(1); const receivedEmailsNewUser = await getEmailsReceivedByUser({ emails, userEmail: newUser.email }); @@ -965,8 +963,6 @@ test.describe("Routing Forms", () => { const newUser = await addNewUserToTeam({ users, teamId }); await goToRoutingLinkAndSubmit({ page, formId }); - // eslint-disable-next-line playwright/no-wait-for-timeout - await page.waitForTimeout(2000); const receivedEmailsOwner = await getEmailsReceivedByUser({ emails, userEmail: owner.email }); expect(receivedEmailsOwner?.total).toBe(1); const receivedEmailsNewUser = await getEmailsReceivedByUser({ emails, userEmail: newUser.email });