diff --git a/playwright/plugins/homeserver/synapse/legacyOAuthHomeserver.ts b/playwright/plugins/homeserver/synapse/legacyOAuthHomeserver.ts index 5e17d73b60..361a36a82e 100644 --- a/playwright/plugins/homeserver/synapse/legacyOAuthHomeserver.ts +++ b/playwright/plugins/homeserver/synapse/legacyOAuthHomeserver.ts @@ -6,14 +6,18 @@ 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 { Fixtures } from "@playwright/test"; +import { Fixtures, PlaywrightTestArgs } from "@playwright/test"; import { TestContainers } from "testcontainers"; import { Services, TestFixtures } from "../../../services.ts"; import { OAuthServer } from "../../oauth_server"; -export const legacyOAuthHomeserver: Fixtures = { - _oAuthServer: [ +export const legacyOAuthHomeserver: Fixtures< + TestFixtures & PlaywrightTestArgs, + Services, + TestFixtures & PlaywrightTestArgs +> = { + oAuthServer: [ // eslint-disable-next-line no-empty-pattern async ({}, use) => { const server = new OAuthServer(); @@ -22,13 +26,13 @@ export const legacyOAuthHomeserver: Fixtures { - _oAuthServer.onTestStarted(testInfo); - await use(_oAuthServer); + context: async ({ context, oAuthServer }, use, testInfo) => { + oAuthServer.onTestStarted(testInfo); + await use(context); }, _homeserver: [ - async ({ _oAuthServer: server, _homeserver: homeserver }, use) => { - const port = server.start(); + async ({ oAuthServer, _homeserver: homeserver }, use) => { + const port = oAuthServer.start(); await TestContainers.exposeHostPorts(port); homeserver.withConfig({ oidc_providers: [ diff --git a/playwright/services.ts b/playwright/services.ts index 8f2ebb51d1..5dae9b8a38 100644 --- a/playwright/services.ts +++ b/playwright/services.ts @@ -19,9 +19,6 @@ import { OAuthServer } from "./plugins/oauth_server"; export interface TestFixtures { mailhogClient: mailhog.API; - - // Set in legacyOAuthHomeserver only - oAuthServer?: OAuthServer; } export interface Services { @@ -37,7 +34,7 @@ export interface Services { mas?: StartedMatrixAuthenticationServiceContainer; // Set in legacyOAuthHomeserver only - _oAuthServer?: OAuthServer; + oAuthServer?: OAuthServer; } export const test = base.extend({