

























@@ -2142,60 +2142,61 @@ describe("matrix live qa scenarios", () => {
2142214221432143const scenario = requireMatrixQaScenario("matrix-e2ee-restart-resume");
214421442145-await expect(
2146-runMatrixQaScenario(scenario, {
2147- ...matrixQaScenarioContext(),
2148-gatewayRuntimeEnv: {
2149-OPENCLAW_CONFIG_PATH: gatewayConfigPath,
2150-PATH: process.env.PATH,
2151-},
2152- outputDir,
2153- restartGateway,
2154- restartGatewayAfterStateMutation,
2155-sutAccountId: "sut",
2156-topology: {
2157-defaultRoomId: "!main:matrix-qa.test",
2158-defaultRoomKey: "main",
2159-rooms: [
2160-{
2161-key: "main",
2162-kind: "group",
2163-memberRoles: ["driver", "observer", "sut"],
2164-memberUserIds: [
2165-"@driver:matrix-qa.test",
2166-"@observer:matrix-qa.test",
2167-"@sut:matrix-qa.test",
2168-],
2169-name: "Main",
2170-requireMention: true,
2171-roomId: "!main:matrix-qa.test",
2172-},
2173-{
2174-encrypted: true,
2175-key: matrixQaE2eeRoomKey("matrix-e2ee-restart-resume"),
2176-kind: "group",
2177-memberRoles: ["driver", "observer", "sut"],
2178-memberUserIds: [
2179-"@driver:matrix-qa.test",
2180-"@observer:matrix-qa.test",
2181-"@sut:matrix-qa.test",
2182-],
2183-name: "Restart",
2184-requireMention: true,
2185-roomId: "!restart:matrix-qa.test",
2186-},
2187-],
2188-},
2189- waitGatewayAccountReady,
2190-}),
2191-).resolves.toMatchObject({
2192-artifacts: {
2193-driverUserId: "@isolated-driver:matrix-qa.test",
2194-firstDriverEventId: "$before-trigger",
2195-recoveredDriverEventId: "$after-trigger",
2196-roomId: "!isolated-restart:matrix-qa.test",
2145+const result = await runMatrixQaScenario(scenario, {
2146+ ...matrixQaScenarioContext(),
2147+gatewayRuntimeEnv: {
2148+OPENCLAW_CONFIG_PATH: gatewayConfigPath,
2149+PATH: process.env.PATH,
2150+},
2151+ outputDir,
2152+ restartGateway,
2153+ restartGatewayAfterStateMutation,
2154+sutAccountId: "sut",
2155+topology: {
2156+defaultRoomId: "!main:matrix-qa.test",
2157+defaultRoomKey: "main",
2158+rooms: [
2159+{
2160+key: "main",
2161+kind: "group",
2162+memberRoles: ["driver", "observer", "sut"],
2163+memberUserIds: [
2164+"@driver:matrix-qa.test",
2165+"@observer:matrix-qa.test",
2166+"@sut:matrix-qa.test",
2167+],
2168+name: "Main",
2169+requireMention: true,
2170+roomId: "!main:matrix-qa.test",
2171+},
2172+{
2173+encrypted: true,
2174+key: matrixQaE2eeRoomKey("matrix-e2ee-restart-resume"),
2175+kind: "group",
2176+memberRoles: ["driver", "observer", "sut"],
2177+memberUserIds: [
2178+"@driver:matrix-qa.test",
2179+"@observer:matrix-qa.test",
2180+"@sut:matrix-qa.test",
2181+],
2182+name: "Restart",
2183+requireMention: true,
2184+roomId: "!restart:matrix-qa.test",
2185+},
2186+],
21972187},
2188+ waitGatewayAccountReady,
21982189});
2190+const artifacts = result.artifacts as {
2191+driverUserId?: unknown;
2192+firstDriverEventId?: unknown;
2193+recoveredDriverEventId?: unknown;
2194+roomId?: unknown;
2195+};
2196+expect(artifacts.driverUserId).toBe("@isolated-driver:matrix-qa.test");
2197+expect(artifacts.firstDriverEventId).toBe("$before-trigger");
2198+expect(artifacts.recoveredDriverEventId).toBe("$after-trigger");
2199+expect(artifacts.roomId).toBe("!isolated-restart:matrix-qa.test");
2199220022002201const restoredConfig = JSON.parse(await readFile(gatewayConfigPath, "utf8")) as {
22012202channels: {
@@ -2226,11 +2227,16 @@ describe("matrix live qa scenarios", () => {
22262227"hard-restart",
22272228]);
22282229expect(restartGatewayAfterStateMutation).toHaveBeenCalledTimes(2);
2229-expect(restartGatewayAfterStateMutation).toHaveBeenNthCalledWith(1, expect.any(Function), {
2230+const restartCalls = restartGatewayAfterStateMutation.mock.calls as unknown as Array<
2231+[unknown, { timeoutMs: number; waitAccountId: string }]
2232+>;
2233+expect(typeof restartCalls[0]?.[0]).toBe("function");
2234+expect(restartCalls[0]?.[1]).toEqual({
22302235timeoutMs: 8_000,
22312236waitAccountId: "sut",
22322237});
2233-expect(restartGatewayAfterStateMutation).toHaveBeenNthCalledWith(2, expect.any(Function), {
2238+expect(typeof restartCalls[1]?.[0]).toBe("function");
2239+expect(restartCalls[1]?.[1]).toEqual({
22342240timeoutMs: 8_000,
22352241waitAccountId: "sut",
22362242});
@@ -2243,15 +2249,12 @@ describe("matrix live qa scenarios", () => {
22432249});
22442250expect(observerJoinRoom).toHaveBeenCalledWith("!isolated-restart:matrix-qa.test");
22452251expect(sutJoinRoom).toHaveBeenCalledWith("!isolated-restart:matrix-qa.test");
2246-expect(createMatrixQaE2eeScenarioClient).toHaveBeenCalledWith(
2247-expect.objectContaining({
2248-accessToken: "isolated-driver-token",
2249-actorId: "driver-restart-resume",
2250-deviceId: "ISOLATEDDRIVER",
2251-password: "isolated-driver-password",
2252-userId: "@isolated-driver:matrix-qa.test",
2253-}),
2254-);
2252+const clientOptions = createMatrixQaE2eeScenarioClient.mock.calls[0]?.[0];
2253+expect(clientOptions?.accessToken).toBe("isolated-driver-token");
2254+expect(clientOptions?.actorId).toBe("driver-restart-resume");
2255+expect(clientOptions?.deviceId).toBe("ISOLATEDDRIVER");
2256+expect(clientOptions?.password).toBe("isolated-driver-password");
2257+expect(clientOptions?.userId).toBe("@isolated-driver:matrix-qa.test");
22552258} finally {
22562259await rm(outputDir, { recursive: true, force: true });
22572260}
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。