From baeca9573e7b58fdd1c04d205fa1cf12cddbbbc1 Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Sun, 12 Apr 2026 04:36:59 +0100 Subject: [PATCH] test(matrix): share named account status fixtures --- .../matrix/src/onboarding.test-harness.ts | 20 +++++ extensions/matrix/src/onboarding.test.ts | 87 ++++++++----------- 2 files changed, 56 insertions(+), 51 deletions(-) diff --git a/extensions/matrix/src/onboarding.test-harness.ts b/extensions/matrix/src/onboarding.test-harness.ts index e5711459116..dd463989117 100644 --- a/extensions/matrix/src/onboarding.test-harness.ts +++ b/extensions/matrix/src/onboarding.test-harness.ts @@ -254,3 +254,23 @@ export function createMatrixUpdateKeepCredentialsPrompter(params?: { ...(params?.onText ? { onText: params.onText } : {}), }); } + +export function createMatrixNamedAccountsConfig(params: { + defaultAccount?: string; + accounts: Record< + string, + { + homeserver: string; + accessToken?: string; + } + >; +}): CoreConfig { + return { + channels: { + matrix: { + ...(params.defaultAccount ? { defaultAccount: params.defaultAccount } : {}), + accounts: params.accounts, + }, + }, + } as CoreConfig; +} diff --git a/extensions/matrix/src/onboarding.test.ts b/extensions/matrix/src/onboarding.test.ts index aa0adab1ae9..f8a7ce01d7e 100644 --- a/extensions/matrix/src/onboarding.test.ts +++ b/extensions/matrix/src/onboarding.test.ts @@ -3,6 +3,7 @@ import { matrixOnboardingAdapter } from "./onboarding.js"; import { createConfiguredMatrixDefaultAccountConfig, createConfiguredMatrixTopLevelConfig, + createMatrixNamedAccountsConfig, createLegacyMatrixTopLevelConfig, createMatrixTokenAddAccountPrompter, createMatrixUpdateKeepCredentialsPrompter, @@ -322,22 +323,18 @@ describe("matrix onboarding", () => { it("resolves status using the overridden Matrix account", async () => { const status = await matrixOnboardingAdapter.getStatus({ - cfg: { - channels: { - matrix: { - defaultAccount: "default", - accounts: { - default: { - homeserver: "https://matrix.default.example.org", - }, - ops: { - homeserver: "https://matrix.ops.example.org", - accessToken: "ops-token", - }, - }, + cfg: createMatrixNamedAccountsConfig({ + defaultAccount: "default", + accounts: { + default: { + homeserver: "https://matrix.default.example.org", + }, + ops: { + homeserver: "https://matrix.ops.example.org", + accessToken: "ops-token", }, }, - } as CoreConfig, + }), options: undefined, accountOverrides: { matrix: "ops", @@ -476,20 +473,16 @@ describe("matrix onboarding", () => { expect( resolveConfigKeys( - { - channels: { - matrix: { - accounts: { - default: { - homeserver: "https://matrix.main.example.org", - }, - ops: { - homeserver: "https://matrix.ops.example.org", - }, - }, + createMatrixNamedAccountsConfig({ + accounts: { + default: { + homeserver: "https://matrix.main.example.org", + }, + ops: { + homeserver: "https://matrix.ops.example.org", }, }, - } as CoreConfig, + }), "ops", ), ).toEqual({ @@ -502,19 +495,15 @@ describe("matrix onboarding", () => { installMatrixTestRuntime(); const status = await matrixOnboardingAdapter.getStatus({ - cfg: { - channels: { - matrix: { - defaultAccount: "ops", - accounts: { - ops: { - homeserver: "https://matrix.ops.example.org", - accessToken: "ops-token", - }, - }, + cfg: createMatrixNamedAccountsConfig({ + defaultAccount: "ops", + accounts: { + ops: { + homeserver: "https://matrix.ops.example.org", + accessToken: "ops-token", }, }, - } as CoreConfig, + }), accountOverrides: {}, }); @@ -527,22 +516,18 @@ describe("matrix onboarding", () => { installMatrixTestRuntime(); const status = await matrixOnboardingAdapter.getStatus({ - cfg: { - channels: { - matrix: { - accounts: { - assistant: { - homeserver: "https://matrix.assistant.example.org", - accessToken: "assistant-token", - }, - ops: { - homeserver: "https://matrix.ops.example.org", - accessToken: "ops-token", - }, - }, + cfg: createMatrixNamedAccountsConfig({ + accounts: { + assistant: { + homeserver: "https://matrix.assistant.example.org", + accessToken: "assistant-token", + }, + ops: { + homeserver: "https://matrix.ops.example.org", + accessToken: "ops-token", }, }, - } as CoreConfig, + }), accountOverrides: {}, });