New room list: fix outdated message preview when space or filter change (#29925)

* fix(new room list): fix outdated message preview when space change

* test(new room list): verify that message preview is check when room change
This commit is contained in:
Florian Duros
2025-05-13 09:57:02 +02:00
committed by GitHub
parent 0d5a8aafbd
commit 64047b0702
2 changed files with 23 additions and 1 deletions

View File

@@ -138,6 +138,28 @@ describe("RoomListItemViewModel", () => {
expect(vm.current.messagePreview).toBe(undefined);
});
it("should check message preview when room change", async () => {
const otherRoom = mkStubRoom("roomId2", "roomName2", room.client);
jest.spyOn(MessagePreviewStore.instance, "getPreviewForRoom").mockResolvedValue({
text: "Message look like this",
} as MessagePreview);
mocked(useMessagePreviewToggle).mockReturnValue({
shouldShowMessagePreview: true,
toggleMessagePreview: jest.fn(),
});
const { result: vm, rerender } = renderHook((props) => useRoomListItemViewModel(props), {
initialProps: room,
...withClientContextRenderOptions(room.client),
});
await waitFor(() => expect(vm.current.messagePreview).toBe("Message look like this"));
jest.spyOn(MessagePreviewStore.instance, "getPreviewForRoom").mockResolvedValue(null);
rerender(otherRoom);
await waitFor(() => expect(vm.current.messagePreview).toBe(undefined));
});
describe("notification", () => {
let notificationState: RoomNotificationState;
beforeEach(() => {