diff --git a/playwright/e2e/oidc/index.ts b/playwright/e2e/oidc/index.ts index 7631939f00..1dcae1c21d 100644 --- a/playwright/e2e/oidc/index.ts +++ b/playwright/e2e/oidc/index.ts @@ -6,7 +6,7 @@ SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Com Please see LICENSE files in the repository root for full details. */ -import { MailpitClient, MailpitMessagesSummaryResponse } from "mailpit-api"; +import { MailpitClient } from "mailpit-api"; import { Page } from "@playwright/test"; import { expect } from "../../element-web-test"; @@ -27,15 +27,13 @@ export async function registerAccountMas( await page.getByRole("textbox", { name: "Confirm Password" }).fill(password); await page.getByRole("button", { name: "Continue" }).click(); - let summary: MailpitMessagesSummaryResponse; + let code: string; await expect(async () => { - summary = await mailpit.listMessages(); - expect(summary.messages_count).toBe(1); + const messages = await mailpit.listMessages(); + expect(messages.messages[0].To[0].Address).toEqual(email); + const text = await mailpit.renderMessageText(messages.messages[0].ID); + [, code] = text.match(/Your verification code to confirm this email address is: (\d{6})/); }).toPass(); - expect(summary.messages[0].To).toEqual(`${username} <${email}>`); - const [, code] = summary.messages[0].Snippet.match( - /Your verification code to confirm this email address is: (\d{6})/, - ); await page.getByRole("textbox", { name: "6-digit code" }).fill(code); await page.getByRole("button", { name: "Continue" }).click(); diff --git a/playwright/e2e/register/email.spec.ts b/playwright/e2e/register/email.spec.ts index f1346af295..d351893f8b 100644 --- a/playwright/e2e/register/email.spec.ts +++ b/playwright/e2e/register/email.spec.ts @@ -51,10 +51,11 @@ test.describe("Email Registration", async () => { await expect(page.getByText("An error was encountered when sending the email")).not.toBeVisible(); - const summary = await mailpitClient.listMessages(); - expect(summary.messages_count).toBe(1); - expect(summary.messages[0].To).toEqual("alice@email.com"); - const [emailLink] = summary.messages[0].Snippet.match(/http.+/); + const messages = await mailpitClient.listMessages(); + expect(messages.messages).toHaveLength(1); + expect(messages.messages[0].To[0].Address).toEqual("alice@email.com"); + const text = await mailpitClient.renderMessageText(messages.messages[0].ID); + const [emailLink] = text.match(/http.+/); await request.get(emailLink); // "Click" the link in the email await expect(page.getByText("Welcome alice")).toBeVisible(); diff --git a/playwright/testcontainers/mailpit.ts b/playwright/testcontainers/mailpit.ts index 94fbb42c83..c4c025c05c 100644 --- a/playwright/testcontainers/mailpit.ts +++ b/playwright/testcontainers/mailpit.ts @@ -12,7 +12,10 @@ export class MailhogContainer extends GenericContainer { constructor() { super("axllent/mailpit:latest"); - this.withExposedPorts(8025).withWaitStrategy(Wait.forListeningPorts()); + this.withExposedPorts(8025).withWaitStrategy(Wait.forListeningPorts()).withEnvironment({ + MP_SMTP_AUTH_ALLOW_INSECURE: "true", + MP_SMTP_AUTH_ACCEPT_ANY: "true", + }); } public override async start(): Promise { diff --git a/yarn.lock b/yarn.lock index e485fd59d2..89ba84b70e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3485,14 +3485,13 @@ "@vector-im/matrix-wysiwyg-wasm@link:../../../.cache/yarn/v6/npm-@vector-im-matrix-wysiwyg-2.38.0-af862ffd231dc0a6b8d6f2cb3601e68456c0ff24-integrity/node_modules/bindings/wysiwyg-wasm": version "0.0.0" - uid "" "@vector-im/matrix-wysiwyg@2.38.0": version "2.38.0" resolved "https://registry.yarnpkg.com/@vector-im/matrix-wysiwyg/-/matrix-wysiwyg-2.38.0.tgz#af862ffd231dc0a6b8d6f2cb3601e68456c0ff24" integrity sha512-cMEVicFYVzFxuSyWON0aVGjAJMcgJZ+LxuLTEp8EGuu8cRacuh0RN5rapb11YVZygzFvE7X1cMedJ/fKd5vRLA== dependencies: - "@vector-im/matrix-wysiwyg-wasm" "link:../../Library/Caches/Yarn/v6/npm-@vector-im-matrix-wysiwyg-2.38.0-af862ffd231dc0a6b8d6f2cb3601e68456c0ff24-integrity/node_modules/bindings/wysiwyg-wasm" + "@vector-im/matrix-wysiwyg-wasm" "link:../../../.cache/yarn/v6/npm-@vector-im-matrix-wysiwyg-2.38.0-af862ffd231dc0a6b8d6f2cb3601e68456c0ff24-integrity/node_modules/bindings/wysiwyg-wasm" "@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": version "1.14.1"