Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -229,35 +229,35 @@ test.describe("Room list filters and sort", () => {
// only one room should be visible
await expect(roomList.getByRole("gridcell", { name: "unread dm" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "unread room" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(4);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(4);
await expect(primaryFilters).toMatchScreenshot("unread-primary-filters.png");

await primaryFilters.getByRole("option", { name: "People" }).click();
await expect(roomList.getByRole("gridcell", { name: "unread dm" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "invited room" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(2);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(2);

await primaryFilters.getByRole("option", { name: "Rooms" }).click();
await expect(roomList.getByRole("gridcell", { name: "unread room" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "favourite room" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "empty room" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "room with mention" })).toBeVisible();
await expect(roomList.getByRole("gridcell", { name: "Low prio room" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(5);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(5);

await getFilterExpandButton(page).click();

await primaryFilters.getByRole("option", { name: "Favourite" }).click();
await expect(roomList.getByRole("gridcell", { name: "favourite room" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(1);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(1);

await primaryFilters.getByRole("option", { name: "Mentions" }).click();
await expect(roomList.getByRole("gridcell", { name: "room with mention" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(1);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(1);

await primaryFilters.getByRole("option", { name: "Invites" }).click();
await expect(roomList.getByRole("gridcell", { name: "invited room" })).toBeVisible();
expect(await roomList.locator("role=gridcell").count()).toBe(1);
await expect.poll(() => roomList.locator("role=gridcell").count()).toBe(1);

await getFilterCollapseButton(page).click();
await expect(primaryFilters.locator("role=option").first()).toHaveText("Invites");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
/*
* Copyright 2025 New Vector Ltd.
*
Expand Down Expand Up @@ -128,7 +128,7 @@
// The room decoration should have the muted icon
await expect(roomItem.getByTestId("notification-decoration")).toBeVisible();

await roomItem.hover();

Check failure on line 131 in playwright/e2e/left-panel/room-list-panel/room-list.spec.ts

View workflow job for this annotation

GitHub Actions / Run Tests [Chrome] 2/6

[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:98:13 › Room list › Room list › should open the notification options menu @screenshot

1) [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:98:13 › Room list › Room list › should open the notification options menu @screenshot Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByTestId('room-list').getByRole('gridcell', { name: 'Open room room29' }) - locator resolved to <button type="button" tabindex="-1" role="gridcell" data-state="closed" aria-haspopup="menu" aria-selected="false" class="mx_RoomListItemView" aria-label="Open room room29">…</button> - attempting hover action - waiting for element to be visible and stable - element was detached from the DOM, retrying 129 | await expect(roomItem.getByTestId("notification-decoration")).toBeVisible(); 130 | > 131 | await roomItem.hover(); | ^ 132 | // On hover, the room should show the muted icon 133 | await expect(roomItem).toMatchScreenshot("room-list-item-hover-silent.png"); 134 | at /home/runner/work/element-web/element-web/playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:131:28
// On hover, the room should show the muted icon
await expect(roomItem).toMatchScreenshot("room-list-item-hover-silent.png");

Expand All @@ -146,7 +146,8 @@
// Scroll to the end of the room list
await page.mouse.wheel(0, 1000);

await expect(roomListView.getByRole("gridcell", { name: "Open room room0" })).toBeVisible();
await roomListView.getByRole("gridcell", { name: "Open room room0" }).click();

Check failure on line 150 in playwright/e2e/left-panel/room-list-panel/room-list.spec.ts

View workflow job for this annotation

GitHub Actions / Run Tests [Chrome] 2/6

[Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room

2) [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:142:13 › Room list › Room list › should scroll to the current room Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByTestId('room-list').getByRole('gridcell', { name: 'Open room room0' }) 148 | 149 | await expect(roomListView.getByRole("gridcell", { name: "Open room room0" })).toBeVisible(); > 150 | await roomListView.getByRole("gridcell", { name: "Open room room0" }).click(); | ^ 151 | 152 | const filters = page.getByRole("listbox", { name: "Room list filters" }); 153 | await filters.getByRole("option", { name: "People" }).click(); at /home/runner/work/element-web/element-web/playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:150:83

const filters = page.getByRole("listbox", { name: "Room list filters" });
await filters.getByRole("option", { name: "People" }).click();
Expand Down
Loading