Conform more code to strict null checking (#10167)
* Conform more code to strict null checking * Delint * Iterate PR based on feedback
This commit is contained in:
parent
f7bea2cae5
commit
4574c665ea
103 changed files with 517 additions and 495 deletions
|
@ -102,9 +102,9 @@ describe("OwnBeaconStore", () => {
|
|||
};
|
||||
|
||||
const expireBeaconAndEmit = (store: OwnBeaconStore, beaconInfoEvent: MatrixEvent): void => {
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(beaconInfoEvent));
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(beaconInfoEvent))!;
|
||||
// time travel until beacon is expired
|
||||
advanceDateAndTime(beacon.beaconInfo.timeout + 100);
|
||||
advanceDateAndTime(beacon.beaconInfo!.timeout + 100);
|
||||
|
||||
// force an update on the beacon
|
||||
// @ts-ignore
|
||||
|
@ -118,13 +118,13 @@ describe("OwnBeaconStore", () => {
|
|||
beaconInfoEvent: MatrixEvent,
|
||||
isLive: boolean,
|
||||
): void => {
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(beaconInfoEvent));
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(beaconInfoEvent))!;
|
||||
// matches original state of event content
|
||||
// except for live property
|
||||
const updateEvent = makeBeaconInfoEvent(
|
||||
beaconInfoEvent.getSender(),
|
||||
beaconInfoEvent.getRoomId(),
|
||||
{ isLive, timeout: beacon.beaconInfo.timeout },
|
||||
beaconInfoEvent.getSender()!,
|
||||
beaconInfoEvent.getRoomId()!,
|
||||
{ isLive, timeout: beacon.beaconInfo!.timeout },
|
||||
"update-event-id",
|
||||
);
|
||||
beacon.update(updateEvent);
|
||||
|
@ -236,12 +236,12 @@ describe("OwnBeaconStore", () => {
|
|||
expect(mockClient.sendEvent).toHaveBeenCalledWith(
|
||||
room1Id,
|
||||
M_BEACON.name,
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom1BeaconInfo.getId()),
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom1BeaconInfo.getId()!),
|
||||
);
|
||||
expect(mockClient.sendEvent).toHaveBeenCalledWith(
|
||||
room2Id,
|
||||
M_BEACON.name,
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom2BeaconInfo.getId()),
|
||||
makeBeaconContent(defaultLocationUri, now, alicesRoom2BeaconInfo.getId()!),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
@ -263,7 +263,7 @@ describe("OwnBeaconStore", () => {
|
|||
it("destroys beacons", async () => {
|
||||
const [room1] = makeRoomsWithStateEvents([alicesRoom1BeaconInfo]);
|
||||
const store = await makeOwnBeaconStore();
|
||||
const beacon = room1.currentState.beacons.get(getBeaconInfoIdentifier(alicesRoom1BeaconInfo));
|
||||
const beacon = room1.currentState.beacons.get(getBeaconInfoIdentifier(alicesRoom1BeaconInfo))!;
|
||||
const destroySpy = jest.spyOn(beacon, "destroy");
|
||||
// @ts-ignore
|
||||
store.onNotReady();
|
||||
|
@ -559,7 +559,7 @@ describe("OwnBeaconStore", () => {
|
|||
|
||||
const [room1] = makeRoomsWithStateEvents([alicesRoom1BeaconInfo, alicesRoom2BeaconInfo]);
|
||||
const store = await makeOwnBeaconStore();
|
||||
const room1BeaconInstance = store.beacons.get(getBeaconInfoIdentifier(alicesRoom1BeaconInfo));
|
||||
const room1BeaconInstance = store.beacons.get(getBeaconInfoIdentifier(alicesRoom1BeaconInfo))!;
|
||||
const beaconDestroySpy = jest.spyOn(room1BeaconInstance, "destroy");
|
||||
const emitSpy = jest.spyOn(store, "emit");
|
||||
|
||||
|
@ -610,7 +610,7 @@ describe("OwnBeaconStore", () => {
|
|||
expect(store.hasLiveBeacons()).toBe(true);
|
||||
const emitSpy = jest.spyOn(store, "emit");
|
||||
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(alicesRoom1BeaconInfo));
|
||||
const beacon = store.getBeaconById(getBeaconInfoIdentifier(alicesRoom1BeaconInfo))!;
|
||||
|
||||
beacon.destroy();
|
||||
mockClient.emit(BeaconEvent.Destroy, beacon.identifier);
|
||||
|
|
|
@ -103,10 +103,11 @@ describe("SpaceStore", () => {
|
|||
const viewRoom = (roomId: string) => defaultDispatcher.dispatch({ action: Action.ViewRoom, room_id: roomId }, true);
|
||||
|
||||
const run = async () => {
|
||||
mocked(client).getRoom.mockImplementation((roomId) => rooms.find((room) => room.roomId === roomId));
|
||||
mocked(client).getRoomUpgradeHistory.mockImplementation((roomId) => [
|
||||
rooms.find((room) => room.roomId === roomId),
|
||||
]);
|
||||
mocked(client).getRoom.mockImplementation((roomId) => rooms.find((room) => room.roomId === roomId) || null);
|
||||
mocked(client).getRoomUpgradeHistory.mockImplementation((roomId) => {
|
||||
const room = rooms.find((room) => room.roomId === roomId);
|
||||
return room ? [room] : [];
|
||||
});
|
||||
await testUtils.setupAsyncStoreWithClient(store, client);
|
||||
jest.runOnlyPendingTimers();
|
||||
};
|
||||
|
@ -312,10 +313,12 @@ describe("SpaceStore", () => {
|
|||
mkSpace(space3, [invite2]);
|
||||
mkSpace(space4, [room4, fav2, space2, space3]);
|
||||
|
||||
mocked(client).getRoom.mockImplementation((roomId) => rooms.find((room) => room.roomId === roomId));
|
||||
mocked(client).getRoom.mockImplementation(
|
||||
(roomId) => rooms.find((room) => room.roomId === roomId) || null,
|
||||
);
|
||||
|
||||
[fav1, fav2, fav3].forEach((roomId) => {
|
||||
client.getRoom(roomId).tags = {
|
||||
client.getRoom(roomId)!.tags = {
|
||||
"m.favourite": {
|
||||
order: 0.5,
|
||||
},
|
||||
|
@ -323,20 +326,20 @@ describe("SpaceStore", () => {
|
|||
});
|
||||
|
||||
[invite1, invite2].forEach((roomId) => {
|
||||
mocked(client.getRoom(roomId)).getMyMembership.mockReturnValue("invite");
|
||||
mocked(client.getRoom(roomId)!).getMyMembership.mockReturnValue("invite");
|
||||
});
|
||||
|
||||
// have dmPartner1 be in space1 with you
|
||||
const mySpace1Member = new RoomMember(space1, testUserId);
|
||||
mySpace1Member.membership = "join";
|
||||
(rooms.find((r) => r.roomId === space1).getMembers as jest.Mock).mockReturnValue([
|
||||
(rooms.find((r) => r.roomId === space1)!.getMembers as jest.Mock).mockReturnValue([
|
||||
mySpace1Member,
|
||||
dm1Partner,
|
||||
]);
|
||||
// have dmPartner2 be in space2 with you
|
||||
const mySpace2Member = new RoomMember(space2, testUserId);
|
||||
mySpace2Member.membership = "join";
|
||||
(rooms.find((r) => r.roomId === space2).getMembers as jest.Mock).mockReturnValue([
|
||||
(rooms.find((r) => r.roomId === space2)!.getMembers as jest.Mock).mockReturnValue([
|
||||
mySpace2Member,
|
||||
dm2Partner,
|
||||
]);
|
||||
|
@ -349,15 +352,15 @@ describe("SpaceStore", () => {
|
|||
event: true,
|
||||
type: EventType.SpaceParent,
|
||||
room: room2,
|
||||
user: client.getUserId(),
|
||||
user: client.getUserId()!,
|
||||
skey: space2,
|
||||
content: { via: [], canonical: true },
|
||||
ts: Date.now(),
|
||||
}) as MatrixEvent,
|
||||
]);
|
||||
mocked(cliRoom2.currentState).getStateEvents.mockImplementation(room2MockStateEvents);
|
||||
mocked(cliRoom2!.currentState).getStateEvents.mockImplementation(room2MockStateEvents);
|
||||
const cliSpace2 = client.getRoom(space2);
|
||||
mocked(cliSpace2.currentState).maySendStateEvent.mockImplementation(
|
||||
mocked(cliSpace2!.currentState).maySendStateEvent.mockImplementation(
|
||||
(evType: string, userId: string) => {
|
||||
if (evType === EventType.SpaceChild) {
|
||||
return userId === client.getUserId();
|
||||
|
@ -368,13 +371,13 @@ describe("SpaceStore", () => {
|
|||
|
||||
// room 3 claims to be a child of space3 but is not due to invalid m.space.parent (permissions)
|
||||
const cliRoom3 = client.getRoom(room3);
|
||||
mocked(cliRoom3.currentState).getStateEvents.mockImplementation(
|
||||
mocked(cliRoom3!.currentState).getStateEvents.mockImplementation(
|
||||
testUtils.mockStateEventImplementation([
|
||||
mkEvent({
|
||||
event: true,
|
||||
type: EventType.SpaceParent,
|
||||
room: room3,
|
||||
user: client.getUserId(),
|
||||
user: client.getUserId()!,
|
||||
skey: space3,
|
||||
content: { via: [], canonical: true },
|
||||
ts: Date.now(),
|
||||
|
@ -382,7 +385,7 @@ describe("SpaceStore", () => {
|
|||
]),
|
||||
);
|
||||
const cliSpace3 = client.getRoom(space3);
|
||||
mocked(cliSpace3.currentState).maySendStateEvent.mockImplementation(
|
||||
mocked(cliSpace3!.currentState).maySendStateEvent.mockImplementation(
|
||||
(evType: string, userId: string) => {
|
||||
if (evType === EventType.SpaceChild) {
|
||||
return false;
|
||||
|
@ -813,7 +816,7 @@ describe("SpaceStore", () => {
|
|||
content: { membership: "join" },
|
||||
ts: Date.now(),
|
||||
});
|
||||
const spaceRoom = client.getRoom(spaceId);
|
||||
const spaceRoom = client.getRoom(spaceId)!;
|
||||
mocked(spaceRoom.currentState).getStateEvents.mockImplementation(
|
||||
testUtils.mockStateEventImplementation([memberEvent]),
|
||||
);
|
||||
|
@ -929,7 +932,7 @@ describe("SpaceStore", () => {
|
|||
|
||||
it("switch to unknown space is a nop", async () => {
|
||||
expect(store.activeSpace).toBe(MetaSpace.Home);
|
||||
const space = client.getRoom(room1); // not a space
|
||||
const space = client.getRoom(room1)!; // not a space
|
||||
store.setActiveSpace(space.roomId);
|
||||
expect(fn).not.toHaveBeenCalledWith(UPDATE_SELECTED_SPACE, space.roomId);
|
||||
expect(store.activeSpace).toBe(MetaSpace.Home);
|
||||
|
@ -962,6 +965,7 @@ describe("SpaceStore", () => {
|
|||
member.membership = "join";
|
||||
return member;
|
||||
}
|
||||
return null;
|
||||
});
|
||||
|
||||
client.emit(RoomStateEvent.Members, event, space.currentState, dm1Partner);
|
||||
|
@ -1088,7 +1092,7 @@ describe("SpaceStore", () => {
|
|||
mkSpace(space1, [room1, room2, room3]);
|
||||
mkSpace(space2, [room1, room2]);
|
||||
|
||||
const cliRoom2 = client.getRoom(room2);
|
||||
const cliRoom2 = client.getRoom(room2)!;
|
||||
mocked(cliRoom2.currentState).getStateEvents.mockImplementation(
|
||||
testUtils.mockStateEventImplementation([
|
||||
mkEvent({
|
||||
|
@ -1267,8 +1271,9 @@ describe("SpaceStore", () => {
|
|||
case dm1Partner.userId:
|
||||
return rootSpaceFriend;
|
||||
}
|
||||
return null;
|
||||
});
|
||||
expect(SpaceStore.instance.getSpaceFilteredUserIds(space1).has(dm1Partner.userId)).toBeFalsy();
|
||||
expect(SpaceStore.instance.getSpaceFilteredUserIds(space1)!.has(dm1Partner.userId)).toBeFalsy();
|
||||
const memberEvent = mkEvent({
|
||||
event: true,
|
||||
type: EventType.RoomMember,
|
||||
|
@ -1281,7 +1286,7 @@ describe("SpaceStore", () => {
|
|||
});
|
||||
client.emit(RoomStateEvent.Members, memberEvent, rootSpace.currentState, dm1Partner);
|
||||
jest.runOnlyPendingTimers();
|
||||
expect(SpaceStore.instance.getSpaceFilteredUserIds(space1).has(dm1Partner.userId)).toBeTruthy();
|
||||
expect(SpaceStore.instance.getSpaceFilteredUserIds(space1)!.has(dm1Partner.userId)).toBeTruthy();
|
||||
const dm1Room = mkRoom(dm1);
|
||||
dm1Room.getMyMembership.mockReturnValue("join");
|
||||
client.emit(ClientEvent.Room, dm1Room);
|
||||
|
|
|
@ -198,10 +198,10 @@ describe("SlidingRoomListStore", () => {
|
|||
return keyToListData[key] || null;
|
||||
});
|
||||
|
||||
expect(store.getTagsForRoom(new Room(roomA, context.client!, context.client!.getUserId()))).toEqual([
|
||||
expect(store.getTagsForRoom(new Room(roomA, context.client!, context.client!.getUserId()!))).toEqual([
|
||||
DefaultTagID.Untagged,
|
||||
]);
|
||||
expect(store.getTagsForRoom(new Room(roomB, context.client!, context.client!.getUserId()))).toEqual([
|
||||
expect(store.getTagsForRoom(new Room(roomB, context.client!, context.client!.getUserId()!))).toEqual([
|
||||
DefaultTagID.Favourite,
|
||||
DefaultTagID.Untagged,
|
||||
]);
|
||||
|
@ -221,9 +221,9 @@ describe("SlidingRoomListStore", () => {
|
|||
0: roomA,
|
||||
};
|
||||
const rooms = [
|
||||
new Room(roomA, context.client!, context.client!.getUserId()),
|
||||
new Room(roomB, context.client!, context.client!.getUserId()),
|
||||
new Room(roomC, context.client!, context.client!.getUserId()),
|
||||
new Room(roomA, context.client!, context.client!.getUserId()!),
|
||||
new Room(roomB, context.client!, context.client!.getUserId()!),
|
||||
new Room(roomC, context.client!, context.client!.getUserId()!),
|
||||
];
|
||||
mocked(context.client!.getRoom).mockImplementation((roomId: string) => {
|
||||
switch (roomId) {
|
||||
|
@ -257,9 +257,9 @@ describe("SlidingRoomListStore", () => {
|
|||
2: roomIdC,
|
||||
0: roomIdA,
|
||||
};
|
||||
const roomA = new Room(roomIdA, context.client!, context.client!.getUserId());
|
||||
const roomB = new Room(roomIdB, context.client!, context.client!.getUserId());
|
||||
const roomC = new Room(roomIdC, context.client!, context.client!.getUserId());
|
||||
const roomA = new Room(roomIdA, context.client!, context.client!.getUserId()!);
|
||||
const roomB = new Room(roomIdB, context.client!, context.client!.getUserId()!);
|
||||
const roomC = new Room(roomIdC, context.client!, context.client!.getUserId()!);
|
||||
mocked(context.client!.getRoom).mockImplementation((roomId: string) => {
|
||||
switch (roomId) {
|
||||
case roomIdA:
|
||||
|
@ -321,8 +321,8 @@ describe("SlidingRoomListStore", () => {
|
|||
const tagId = DefaultTagID.Favourite;
|
||||
const joinCount = 10;
|
||||
// seed the store with 2 rooms
|
||||
const roomA = new Room(roomIdA, context.client!, context.client!.getUserId());
|
||||
const roomC = new Room(roomIdC, context.client!, context.client!.getUserId());
|
||||
const roomA = new Room(roomIdA, context.client!, context.client!.getUserId()!);
|
||||
const roomC = new Room(roomIdC, context.client!, context.client!.getUserId()!);
|
||||
mocked(context.client!.getRoom).mockImplementation((roomId: string) => {
|
||||
switch (roomId) {
|
||||
case roomIdA:
|
||||
|
|
|
@ -29,11 +29,13 @@ import { MatrixClientPeg } from "../../../src/MatrixClientPeg";
|
|||
import { SpaceFilterCondition } from "../../../src/stores/room-list/filters/SpaceFilterCondition";
|
||||
import DMRoomMap from "../../../src/utils/DMRoomMap";
|
||||
|
||||
let filter: SpaceFilterCondition = null;
|
||||
let filter: SpaceFilterCondition | null = null;
|
||||
|
||||
const mockRoomListStore = {
|
||||
addFilter: (f: SpaceFilterCondition) => (filter = f),
|
||||
removeFilter: (): void => (filter = null),
|
||||
removeFilter: (): void => {
|
||||
filter = null;
|
||||
},
|
||||
} as unknown as RoomListStoreClass;
|
||||
|
||||
const getUserIdForRoomId = jest.fn();
|
||||
|
@ -74,7 +76,7 @@ describe("SpaceWatcher", () => {
|
|||
[MetaSpace.Orphans]: true,
|
||||
});
|
||||
|
||||
client.getRoom.mockImplementation((roomId) => rooms.find((room) => room.roomId === roomId));
|
||||
client.getRoom.mockImplementation((roomId) => rooms.find((room) => room.roomId === roomId) || null);
|
||||
await setupAsyncStoreWithClient(store, client);
|
||||
});
|
||||
|
||||
|
@ -99,7 +101,7 @@ describe("SpaceWatcher", () => {
|
|||
await setShowAllRooms(false);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Home);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Home);
|
||||
});
|
||||
|
||||
it("sets filter correctly for all -> space transition", async () => {
|
||||
|
@ -109,7 +111,7 @@ describe("SpaceWatcher", () => {
|
|||
SpaceStore.instance.setActiveSpace(space1);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
});
|
||||
|
||||
it("removes filter for home -> all transition", async () => {
|
||||
|
@ -128,7 +130,7 @@ describe("SpaceWatcher", () => {
|
|||
SpaceStore.instance.setActiveSpace(space1);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
});
|
||||
|
||||
it("removes filter for space -> all transition", async () => {
|
||||
|
@ -137,7 +139,7 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
SpaceStore.instance.setActiveSpace(space1);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Home);
|
||||
|
||||
expect(filter).toBeNull();
|
||||
|
@ -149,7 +151,7 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Favourites);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Favourites);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Favourites);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Home);
|
||||
|
||||
expect(filter).toBeNull();
|
||||
|
@ -161,7 +163,7 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.People);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.People);
|
||||
expect(filter!["space"]).toBe(MetaSpace.People);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Home);
|
||||
|
||||
expect(filter).toBeNull();
|
||||
|
@ -173,7 +175,7 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Orphans);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Orphans);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Orphans);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Home);
|
||||
|
||||
expect(filter).toBeNull();
|
||||
|
@ -185,11 +187,11 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Home);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Home);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Home);
|
||||
});
|
||||
|
||||
it("updates filter correctly for space -> orphans transition", async () => {
|
||||
|
@ -198,11 +200,11 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.Orphans);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Orphans);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Orphans);
|
||||
});
|
||||
|
||||
it("updates filter correctly for orphans -> people transition", async () => {
|
||||
|
@ -211,11 +213,11 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.Orphans);
|
||||
expect(filter!["space"]).toBe(MetaSpace.Orphans);
|
||||
SpaceStore.instance.setActiveSpace(MetaSpace.People);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(MetaSpace.People);
|
||||
expect(filter!["space"]).toBe(MetaSpace.People);
|
||||
});
|
||||
|
||||
it("updates filter correctly for space -> space transition", async () => {
|
||||
|
@ -224,11 +226,11 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
SpaceStore.instance.setActiveSpace(space2);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space2);
|
||||
expect(filter!["space"]).toBe(space2);
|
||||
});
|
||||
|
||||
it("doesn't change filter when changing showAllRooms mode to true", async () => {
|
||||
|
@ -237,11 +239,11 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
await setShowAllRooms(true);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
});
|
||||
|
||||
it("doesn't change filter when changing showAllRooms mode to false", async () => {
|
||||
|
@ -250,10 +252,10 @@ describe("SpaceWatcher", () => {
|
|||
|
||||
new SpaceWatcher(mockRoomListStore);
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
await setShowAllRooms(false);
|
||||
|
||||
expect(filter).toBeInstanceOf(SpaceFilterCondition);
|
||||
expect(filter["space"]).toBe(space1);
|
||||
expect(filter!["space"]).toBe(space1);
|
||||
});
|
||||
});
|
||||
|
|
|
@ -109,14 +109,14 @@ describe("VisibilityProvider", () => {
|
|||
});
|
||||
|
||||
it("should return false if visibility customisation returns false", () => {
|
||||
mocked(RoomListCustomisations.isRoomVisible).mockReturnValue(false);
|
||||
mocked(RoomListCustomisations.isRoomVisible!).mockReturnValue(false);
|
||||
const room = createRoom();
|
||||
expect(VisibilityProvider.instance.isRoomVisible(room)).toBe(false);
|
||||
expect(RoomListCustomisations.isRoomVisible).toHaveBeenCalledWith(room);
|
||||
});
|
||||
|
||||
it("should return true if visibility customisation returns true", () => {
|
||||
mocked(RoomListCustomisations.isRoomVisible).mockReturnValue(true);
|
||||
mocked(RoomListCustomisations.isRoomVisible!).mockReturnValue(true);
|
||||
const room = createRoom();
|
||||
expect(VisibilityProvider.instance.isRoomVisible(room)).toBe(true);
|
||||
expect(RoomListCustomisations.isRoomVisible).toHaveBeenCalledWith(room);
|
||||
|
|
|
@ -80,8 +80,8 @@ describe("StopGapWidget", () => {
|
|||
beforeEach(() => {
|
||||
voiceBroadcastInfoEvent = mkEvent({
|
||||
event: true,
|
||||
room: client.getRoom("x").roomId,
|
||||
user: client.getUserId(),
|
||||
room: client.getRoom("x")?.roomId,
|
||||
user: client.getUserId()!,
|
||||
type: VoiceBroadcastInfoEventType,
|
||||
content: {},
|
||||
});
|
||||
|
|
|
@ -59,22 +59,22 @@ describe("WidgetPermissionStore", () => {
|
|||
});
|
||||
|
||||
it("should persist OIDCState.Allowed for a widget", () => {
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, null, OIDCState.Allowed);
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, roomId, OIDCState.Allowed);
|
||||
// check it remembered the value
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, null)).toEqual(OIDCState.Allowed);
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, roomId)).toEqual(OIDCState.Allowed);
|
||||
});
|
||||
|
||||
it("should persist OIDCState.Denied for a widget", () => {
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, null, OIDCState.Denied);
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, roomId, OIDCState.Denied);
|
||||
// check it remembered the value
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, null)).toEqual(OIDCState.Denied);
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, roomId)).toEqual(OIDCState.Denied);
|
||||
});
|
||||
|
||||
it("should update OIDCState for a widget", () => {
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, null, OIDCState.Allowed);
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, null, OIDCState.Denied);
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, roomId, OIDCState.Allowed);
|
||||
widgetPermissionStore.setOIDCState(w, WidgetKind.Account, roomId, OIDCState.Denied);
|
||||
// check it remembered the latest value
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, null)).toEqual(OIDCState.Denied);
|
||||
expect(widgetPermissionStore.getOIDCState(w, WidgetKind.Account, roomId)).toEqual(OIDCState.Denied);
|
||||
});
|
||||
|
||||
it("should scope the location for a widget when setting OIDC state", () => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue