Fix Integration Tests for AS mode

This commit is contained in:
Catalan Lover
2026-03-26 19:06:50 +01:00
parent 4f403e648c
commit 22cc0f8418
2 changed files with 20 additions and 6 deletions
+14 -1
View File
@@ -37,6 +37,7 @@ export async function setupHarnessWithConfig(
): Promise<MjolnirAppService> {
const utilityUser = await newTestUser(config.homeserver.url, {
name: { contains: "utility" },
isAdmin: true,
});
if (
typeof config.adminRoom !== "string" ||
@@ -46,7 +47,19 @@ export async function setupHarnessWithConfig(
"This test expects the harness config to have a room alias."
);
}
await ensureAliasedRoomExists(utilityUser, config.adminRoom);
await utilityUser
.deleteRoomAlias(config.adminRoom)
// we ignore errors here because the admin room alias may not exist. Ex wont exist when at clean state.
.catch((_: unknown) => undefined);
const adminRoomID = await ensureAliasedRoomExists(
utilityUser,
config.adminRoom
);
await utilityUser.setUserPowerLevel(
"@draupnir-moderation:localhost:9999",
adminRoomID,
100
);
return await MjolnirAppService.run(
9000,
config,
@@ -33,6 +33,7 @@ import {
} from "matrix-protection-suite";
import { SafeModeDraupnir } from "../../src/safemode/DraupnirSafeMode";
import { TopLevelStores } from "../../src/backingstore/DraupnirStores";
import { StringRoomID } from "@the-draupnir-project/matrix-basic-types";
patchMatrixClient();
@@ -67,9 +68,9 @@ export interface DraupnirTestContext extends SafeMochaContext {
export async function ensureAliasedRoomExists(
client: MatrixClient,
alias: string
): Promise<string> {
): Promise<StringRoomID> {
try {
return await client.resolveRoom(alias);
return (await client.resolveRoom(alias)) as StringRoomID;
} catch (e) {
if (typeof e !== "object" || e === null) {
throw new TypeError("Something is throwing garbage");
@@ -81,11 +82,11 @@ export async function ensureAliasedRoomExists(
throw e;
}
console.info(`${alias} hasn't been created yet, so we're making it now.`);
const roomId = await client.createRoom({
const roomID = await client.createRoom({
visibility: "public",
});
await client.createRoomAlias(alias, roomId);
return roomId;
await client.createRoomAlias(alias, roomID);
return roomID as StringRoomID;
}
}