Skip to content

End to End Tests

End to End Tests #37

Triggered via schedule February 11, 2025 06:07
Status Failure
Total duration 31m 55s
Artifacts 22

end-to-end-tests.yaml

on: schedule
Build Element-Web
2m 9s
Build Element-Web
Matrix: playwright
end-to-end-tests
1m 3s
end-to-end-tests
Fit to window
Zoom out
Zoom in

Annotations

70 errors, 116 warnings, and 20 notices
[Dendrite] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit: playwright/e2e/crypto/utils.ts#L193
1) [Dendrite] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit Error: expect(received).toBe(expected) // Object.is equality Expected: "1" Received: "6" at crypto/utils.ts:193 191 | expect(backupInfo).toBeDefined(); 192 | // The key backup version is as expected > 193 | expect(backupInfo.version).toBe(expectedBackupVersion); | ^ 194 | // The active backup version is as expected 195 | expect(activeBackupVersion).toBe(expectedBackupVersion); 196 | // The backup key is stored in 4S at checkDeviceIsConnectedKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:193:32) at /home/runner/work/element-web/element-web/playwright/e2e/settings/encryption-user-tab/recovery.spec.ts:89:9
[Pinecone] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L1
1) [Pinecone] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Test timeout of 30000ms exceeded.
[Pinecone] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L406
1) [Pinecone] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Error: page.waitForRequest: Test timeout of 30000ms exceeded. 404 | await Promise.all([ 405 | page.waitForRequest(matchRoomSubRequest(roomOId)), > 406 | page.waitForRequest(matchRoomUnsubRequest(roomPId)), | ^ 407 | page.getByRole("treeitem", { name: "Orange", exact: true }).click(), 408 | ]); 409 | at /home/runner/work/element-web/element-web/playwright/e2e/sliding-sync/sliding-sync.spec.ts:406:18
[Pinecone] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit: playwright/e2e/crypto/utils.ts#L193
1) [Pinecone] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit Error: expect(received).toBe(expected) // Object.is equality Expected: "1" Received: "6" at crypto/utils.ts:193 191 | expect(backupInfo).toBeDefined(); 192 | // The key backup version is as expected > 193 | expect(backupInfo.version).toBe(expectedBackupVersion); | ^ 194 | // The active backup version is as expected 195 | expect(activeBackupVersion).toBe(expectedBackupVersion); 196 | // The backup key is stored in 4S at checkDeviceIsConnectedKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:193:32) at /home/runner/work/element-web/element-web/playwright/e2e/settings/encryption-user-tab/recovery.spec.ts:89:9
[Chrome] › read-receipts/new-messages-main-timeline.spec.ts:53:17 › Read receipts › new messages › in the main timeline › Reading an older message leaves the room unread @mergequeue: playwright/e2e/read-receipts/index.ts#L488
1) [Chrome] › read-receipts/new-messages-main-timeline.spec.ts:53:17 › Read receipts › new messages › in the main timeline › Reading an older message leaves the room unread @mergequeue Error: expect(received).toBeLessThan(expected) Expected: < 30 Received: 30 Call Log: - Timeout 5000ms exceeded while waiting on the predicate at read-receipts/index.ts:488 486 | // https://playwright.dev/docs/test-assertions#expectpoll 487 | // .toBeLessThan doesn't have a retry mechanism, so we use .poll > 488 | await expect | ^ 489 | .poll(async () => { 490 | return parseInt(await tile.locator(".mx_NotificationBadge_count").textContent(), 10); 491 | }) at Helpers.assertUnreadLessThan (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:488:9) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/new-messages-main-timeline.spec.ts:68:17
[Chrome] › timeline/timeline.spec.ts:140:13 › Timeline › configure room › should create and configure a room on IRC layout @screenshot: playwright/e2e/timeline/timeline.spec.ts#L156
1) [Chrome] › timeline/timeline.spec.ts:140:13 › Timeline › configure room › should create and configure a room on IRC layout @screenshot Error: expect(locator).toHaveScreenshot(expected) 40 pixels (ratio 0.01 of all image pixels) are different. Expected: /home/runner/work/element-web/element-web/playwright/snapshots/timeline/timeline.spec.ts/configured-room-irc-layout-linux.png Received: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-43bff-figure-a-room-on-IRC-layout-Chrome/configured-room-irc-layout-actual.png Diff: /home/runner/work/element-web/element-web/playwright/test-results/timeline-timeline-Timeline-43bff-figure-a-room-on-IRC-layout-Chrome/configured-room-irc-layout-diff.png Call log: - expect.toHaveScreenshot(configured-room-irc-layout.png) with timeout 5000ms - verifying given screenshot expectation - waiting for locator('.mx_MainSplit') - locator resolved to <div class="mx_MainSplit">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - 40 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.mx_MainSplit') - locator resolved to <div class="mx_MainSplit">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - 40 pixels (ratio 0.01 of all image pixels) are different. 154 | await expect(page.locator(".mx_TimelineSeparator")).toHaveText("today"); 155 | > 156 | await expect(page.locator(".mx_MainSplit")).toMatchScreenshot("configured-room-irc-layout.png"); | ^ 157 | }, 158 | ); 159 | at /home/runner/work/element-web/element-web/playwright/e2e/timeline/timeline.spec.ts:156:61
[Chrome] › timeline/timeline.spec.ts:160:13 › Timeline › configure room › should have an expanded generic event list summary (GELS) on IRC layout @screenshot: playwright/e2e/timeline/timeline.spec.ts#L1
2) [Chrome] › timeline/timeline.spec.ts:160:13 › Timeline › configure room › should have an expanded generic event list summary (GELS) on IRC layout @screenshot Test timeout of 30000ms exceeded.
[Chrome] › timeline/timeline.spec.ts:160:13 › Timeline › configure room › should have an expanded generic event list summary (GELS) on IRC layout @screenshot: playwright/e2e/timeline/timeline.spec.ts#L177
2) [Chrome] › timeline/timeline.spec.ts:160:13 › Timeline › configure room › should have an expanded generic event list summary (GELS) on IRC layout @screenshot Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_GenericEventListSummary').getByRole('button', { name: 'Expand' }) - locator resolved to <div tabindex="0" role="button" aria-expanded="false" class="mx_AccessibleButton mx_GenericEventListSummary_toggle mx_AccessibleButton_hasKind mx_AccessibleButton_kind_link_inline">Expand</div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div tabindex="0" role="button" aria-label="Scroll to most recent messages" class="mx_AccessibleButton mx_JumpToBottomButton_scrollDown"></div> from <div class="mx_JumpToBottomButton">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div tabindex="0" role="button" aria-label="Scroll to most recent messages" class="mx_AccessibleButton mx_JumpToBottomButton_scrollDown"></div> from <div class="mx_JumpToBottomButton">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 53 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div tabindex="0" role="button" aria-label="Scroll to most recent messages" class="mx_AccessibleButton mx_JumpToBottomButton_scrollDown"></div> from <div class="mx_JumpToBottomButton">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 175 | const gels = page.locator(".mx_GenericEventListSummary"); 176 | // Click "expand" link button > 177 | await gels.getByRole("button", { name: "Expand" }).click(); | ^ 178 | // Assert that the "expand" link button worked 179 | await expect(gels.getByRole("button", { name: "Collapse" })).toBeVisible(); 180 | at /home/runner/work/element-web/element-web/playwright/e2e/timeline/timeline.spec.ts:177:68
[Firefox] › read-receipts/new-messages-thread-roots.spec.ts:38:17 › Read receipts › new messages › thread roots › Reading a thread root within the thread view marks it as read in the main timeline @mergequeue: playwright/e2e/read-receipts/index.ts#L473
1) [Firefox] › read-receipts/new-messages-thread-roots.spec.ts:38:17 › Read receipts › new messages › thread roots › Reading a thread root within the thread view marks it as read in the main timeline @mergequeue Error: Timed out 5000ms waiting for expect(locator).toHaveText(expected) Locator: getByRole('treeitem', { name: /^Room Beta/ }).locator('.mx_NotificationBadge_count') Expected string: "23" Received string: "46" Call log: - expect.toHaveText with timeout 5000ms - waiting for getByRole('treeitem', { name: /^Room Beta/ }).locator('.mx_NotificationBadge_count') 8 × locator resolved to <span class="mx_NotificationBadge_count">46</span> - unexpected value "46" at read-receipts/index.ts:473 471 | await expect(tile.locator(".mx_NotificationBadge_dot")).toBeVisible(); 472 | } else { > 473 | await expect(tile.locator(".mx_NotificationBadge_count")).toHaveText(count.toString()); | ^ 474 | } 475 | } 476 | at Helpers.assertUnread (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:473:71) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/new-messages-thread-roots.spec.ts:61:28
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:121:17
[WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys: playwright/e2e/crypto/utils.ts#L329
3) [WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys ────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at enableKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:302:12) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:165:34
[WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys: playwright/e2e/crypto/utils.ts#L329
3) [WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys ────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at enableKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:302:12) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:165:34
[WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys: playwright/e2e/crypto/utils.ts#L329
3) [WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys ────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at enableKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:302:12) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:165:34
[WebKit] › crypto/decryption-failure-messages.spec.ts:33:13 › Cryptography › decryption failure messages › should handle device-relative historical messages: playwright/e2e/crypto/utils.ts#L329
4) [WebKit] › crypto/decryption-failure-messages.spec.ts:33:13 › Cryptography › decryption failure messages › should handle device-relative historical messages Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at enableKeyBackup (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:302:12) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/decryption-failure-messages.spec.ts:57:38
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L1
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Test timeout of 30000ms exceeded.
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L307
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Error: page.waitForRequest: Test timeout of 30000ms exceeded. =========================== logs =========================== waiting for request /http:\/\/localhost:\d+\/_matrix\/client\/v3\/room…/ ============================================================ 305 | 306 | // the following code tests the fully read marker somewhere in the middle of the room > 307 | const readMarkersRequestPromise = page.waitForRequest( | ^ 308 | new RegExp(`http://localhost:\\d+/_matrix/client/v3/rooms/${uriEncodedOtherRoomId}/read_markers`), 309 | ); 310 | at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:307:48
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L311
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Jump to first unread message.' }) 309 | ); 310 | > 311 | await page.getByRole("button", { name: "Jump to first unread message." }).click(); | ^ 312 | 313 | const readMarkersRequest = await readMarkersRequestPromise; 314 | // since this is not pixel perfect, at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:311:83
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L1
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L307
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.waitForRequest: Test timeout of 30000ms exceeded. =========================== logs =========================== waiting for request /http:\/\/localhost:\d+\/_matrix\/client\/v3\/room…/ ============================================================ 305 | 306 | // the following code tests the fully read marker somewhere in the middle of the room > 307 | const readMarkersRequestPromise = page.waitForRequest( | ^ 308 | new RegExp(`http://localhost:\\d+/_matrix/client/v3/rooms/${uriEncodedOtherRoomId}/read_markers`), 309 | ); 310 | at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:307:48
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L311
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Jump to first unread message.' }) 309 | ); 310 | > 311 | await page.getByRole("button", { name: "Jump to first unread message." }).click(); | ^ 312 | 313 | const readMarkersRequest = await readMarkersRequestPromise; 314 | // since this is not pixel perfect, at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:311:83
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L1
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L307
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.waitForRequest: Test timeout of 30000ms exceeded. =========================== logs =========================== waiting for request /http:\/\/localhost:\d+\/_matrix\/client\/v3\/room…/ ============================================================ 305 | 306 | // the following code tests the fully read marker somewhere in the middle of the room > 307 | const readMarkersRequestPromise = page.waitForRequest( | ^ 308 | new RegExp(`http://localhost:\\d+/_matrix/client/v3/rooms/${uriEncodedOtherRoomId}/read_markers`), 309 | ); 310 | at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:307:48
[WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue: playwright/e2e/read-receipts/read-receipts.spec.ts#L311
1) [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Jump to first unread message.' }) 309 | ); 310 | > 311 | await page.getByRole("button", { name: "Jump to first unread message." }).click(); | ^ 312 | 313 | const readMarkersRequest = await readMarkersRequestPromise; 314 | // since this is not pixel perfect, at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/read-receipts.spec.ts:311:83
[WebKit] › read-receipts/reactions-in-threads.spec.ts:19:17 › Read receipts › reactions › in threads › A reaction to a threaded message does not make the room unread @mergequeue: playwright/e2e/read-receipts/reactions-in-threads.spec.ts#L1
2) [WebKit] › read-receipts/reactions-in-threads.spec.ts:19:17 › Read receipts › reactions › in threads › A reaction to a threaded message does not make the room unread @mergequeue Test timeout of 30000ms exceeded.
[WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:50:9
[WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:50:9
[WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
1) [WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:50:9
[WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:90:9
[WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:90:9
[WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device: playwright/e2e/crypto/utils.ts#L329
2) [WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.evaluate: NotAllowedError: The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission. at crypto/utils.ts:329 327 | await currentDialogLocator.getByRole("button", { name: "Copy", exact: true }).click(); 328 | // copy the recovery key to use it later > 329 | const recoveryKey = await page.evaluate(() => navigator.clipboard.readText()); | ^ 330 | await currentDialogLocator.getByRole("button", { name: "Continue", exact: true }).click(); 331 | 332 | // If the device is unverified, there should be a "Setting up keys" step. at completeCreateSecretStorageDialog (/home/runner/work/element-web/element-web/playwright/e2e/crypto/utils.ts:329:36) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/dehydration.spec.ts:90:9
[WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L1
3) [WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Test timeout of 30000ms exceeded.
[WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L399
3) [WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Error: page.waitForRequest: Test timeout of 30000ms exceeded. 397 | await Promise.all([ 398 | page.waitForRequest(matchRoomSubRequest(roomPId)), > 399 | page.waitForRequest(matchRoomUnsubRequest(roomAId)), | ^ 400 | page.getByRole("treeitem", { name: "Pineapple", exact: true }).click(), 401 | ]); 402 | at /home/runner/work/element-web/element-web/playwright/e2e/sliding-sync/sliding-sync.spec.ts:399:18
[WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L1
3) [WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch: playwright/e2e/sliding-sync/sliding-sync.spec.ts#L399
3) [WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: page.waitForRequest: Test timeout of 30000ms exceeded. 397 | await Promise.all([ 398 | page.waitForRequest(matchRoomSubRequest(roomPId)), > 399 | page.waitForRequest(matchRoomUnsubRequest(roomAId)), | ^ 400 | page.getByRole("treeitem", { name: "Pineapple", exact: true }).click(), 401 | ]); 402 | at /home/runner/work/element-web/element-web/playwright/e2e/sliding-sync/sliding-sync.spec.ts:399:18
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/room-list-order.spec.ts#L1
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Test timeout of 30000ms exceeded.
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/index.ts#L594
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: /^Rooms/ }) - locator resolved to <div aria-level="1" role="treeitem" aria-label="Rooms" aria-expanded="true" aria-selected="false" class="mx_RoomSublist_headerContainer mx_RoomSublist_headerContainer_withAux">…</div> - attempting hover action 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 20ms 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 100ms 45 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 500ms at read-receipts/index.ts:594 592 | async toggleRoomListMenu() { 593 | const tile = this.getRoomListTile("Rooms"); > 594 | await tile.hover(); | ^ 595 | const button = tile.getByLabel("List options"); 596 | await button.click(); 597 | } at Helpers.toggleRoomListMenu (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:594:20) at Helpers.toggleRoomUnreadOrder (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:603:20) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/room-list-order.spec.ts:25:24
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/room-list-order.spec.ts#L1
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/index.ts#L594
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: /^Rooms/ }) - locator resolved to <div aria-level="1" role="treeitem" aria-label="Rooms" aria-expanded="true" aria-selected="false" class="mx_RoomSublist_headerContainer mx_RoomSublist_headerContainer_withAux">…</div> - attempting hover action 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 20ms 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 100ms 35 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 500ms at read-receipts/index.ts:594 592 | async toggleRoomListMenu() { 593 | const tile = this.getRoomListTile("Rooms"); > 594 | await tile.hover(); | ^ 595 | const button = tile.getByLabel("List options"); 596 | await button.click(); 597 | } at Helpers.toggleRoomListMenu (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:594:20) at Helpers.toggleRoomUnreadOrder (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:603:20) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/room-list-order.spec.ts:25:24
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/room-list-order.spec.ts#L1
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/index.ts#L594
1) [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: /^Rooms/ }) - locator resolved to <div aria-level="1" role="treeitem" aria-label="Rooms" aria-expanded="true" aria-selected="false" class="mx_RoomSublist_headerContainer mx_RoomSublist_headerContainer_withAux">…</div> - attempting hover action 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 20ms 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 100ms 36 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 500ms at read-receipts/index.ts:594 592 | async toggleRoomListMenu() { 593 | const tile = this.getRoomListTile("Rooms"); > 594 | await tile.hover(); | ^ 595 | const button = tile.getByLabel("List options"); 596 | await button.click(); 597 | } at Helpers.toggleRoomListMenu (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:594:20) at Helpers.toggleRoomUnreadOrder (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:603:20) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/room-list-order.spec.ts:25:24
[Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/room-list-order.spec.ts#L1
2) [Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue Test timeout of 30000ms exceeded.
[Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/index.ts#L594
2) [Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: /^Rooms/ }) - locator resolved to <div aria-level="1" role="treeitem" aria-label="Rooms" aria-expanded="true" aria-selected="false" class="mx_RoomSublist_headerContainer mx_RoomSublist_headerContainer_withAux">…</div> - attempting hover action 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 20ms 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 100ms 37 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 500ms at read-receipts/index.ts:594 592 | async toggleRoomListMenu() { 593 | const tile = this.getRoomListTile("Rooms"); > 594 | await tile.hover(); | ^ 595 | const button = tile.getByLabel("List options"); 596 | await button.click(); 597 | } at Helpers.toggleRoomListMenu (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:594:20) at Helpers.toggleRoomUnreadOrder (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:603:20) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/room-list-order.spec.ts:45:24
[Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/room-list-order.spec.ts#L1
2) [Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue: playwright/e2e/read-receipts/index.ts#L594
2) [Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.hover: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: /^Rooms/ }) - locator resolved to <div aria-level="1" role="treeitem" aria-label="Rooms" aria-expanded="true" aria-selected="false" class="mx_RoomSublist_headerContainer mx_RoomSublist_headerContainer_withAux">…</div> - attempting hover action 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 20ms 2 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 100ms 35 × waiting for element to be visible and stable - element is visible and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying hover action - waiting 500ms at read-receipts/index.ts:594 592 | async toggleRoomListMenu() { 593 | const tile = this.getRoomListTile("Rooms"); > 594 | await tile.hover(); | ^ 595 | const button = tile.getByLabel("List options"); 596 | await button.click(); 597 | } at Helpers.toggleRoomListMenu (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:594:20) at Helpers.toggleRoomUnreadOrder (/home/runner/work/element-web/element-web/playwright/e2e/read-receipts/index.ts:603:20) at /home/runner/work/element-web/element-web/playwright/e2e/read-receipts/room-list-order.spec.ts:45:24
[Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery: playwright/e2e/crypto/backups-mas.spec.ts#L45
1) [Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: getByRole('heading', { name: 'Set up recovery' }) Expected: visible Received: <element(s) not found> Call log: - expect.toBeVisible with timeout 5000ms - waiting for getByRole('heading', { name: 'Set up recovery' }) 43 | await page.getByRole("button", { name: "Create room" }).click(); 44 | > 45 | await expect(page.getByRole("heading", { name: "Set up recovery" })).toBeVisible(); | ^ 46 | }); 47 | }); 48 | at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:45:78
[Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery: playwright/e2e/crypto/backups-mas.spec.ts#L45
1) [Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: getByRole('heading', { name: 'Set up recovery' }) Expected: visible Received: <element(s) not found> Call log: - expect.toBeVisible with timeout 5000ms - waiting for getByRole('heading', { name: 'Set up recovery' }) 43 | await page.getByRole("button", { name: "Create room" }).click(); 44 | > 45 | await expect(page.getByRole("heading", { name: "Set up recovery" })).toBeVisible(); | ^ 46 | }); 47 | }); 48 | at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:45:78
[Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery: playwright/e2e/crypto/backups-mas.spec.ts#L45
1) [Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: getByRole('heading', { name: 'Set up recovery' }) Expected: visible Received: <element(s) not found> Call log: - expect.toBeVisible with timeout 5000ms - waiting for getByRole('heading', { name: 'Set up recovery' }) 43 | await page.getByRole("button", { name: "Create room" }).click(); 44 | > 45 | await expect(page.getByRole("heading", { name: "Set up recovery" })).toBeVisible(); | ^ 46 | }); 47 | }); 48 | at /home/runner/work/element-web/element-web/playwright/e2e/crypto/backups-mas.spec.ts:45:78
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L28
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Test timeout of 30000ms exceeded while running "beforeEach" hook. 26 | }); 27 | > 28 | test.beforeEach(async ({ page, user }) => { | ^ 29 | // Dismiss "Notification" toast 30 | await page 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:28:14
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L33
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_Toast_toast').filter({ hasText: 'Notifications' }).getByRole('button', { name: 'Dismiss' }) 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) 32 | .getByRole("button", { name: "Dismiss" }) > 33 | .click(); | ^ 34 | 35 | await page.locator(".mx_Toast_buttons").getByRole("button", { name: "Yes" }).click(); // Allow analytics 36 | }); at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:33:18
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L28
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded while running "beforeEach" hook. 26 | }); 27 | > 28 | test.beforeEach(async ({ page, user }) => { | ^ 29 | // Dismiss "Notification" toast 30 | await page 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:28:14
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L33
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_Toast_toast').filter({ hasText: 'Notifications' }).getByRole('button', { name: 'Dismiss' }) 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) 32 | .getByRole("button", { name: "Dismiss" }) > 33 | .click(); | ^ 34 | 35 | await page.locator(".mx_Toast_buttons").getByRole("button", { name: "Yes" }).click(); // Allow analytics 36 | }); at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:33:18
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L28
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded while running "beforeEach" hook. 26 | }); 27 | > 28 | test.beforeEach(async ({ page, user }) => { | ^ 29 | // Dismiss "Notification" toast 30 | await page 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:28:14
[Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot: playwright/e2e/settings/security-user-settings-tab.spec.ts#L33
2) [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_Toast_toast').filter({ hasText: 'Notifications' }).getByRole('button', { name: 'Dismiss' }) 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) 32 | .getByRole("button", { name: "Dismiss" }) > 33 | .click(); | ^ 34 | 35 | await page.locator(".mx_Toast_buttons").getByRole("button", { name: "Yes" }).click(); // Allow analytics 36 | }); at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:33:18
[Firefox] › settings/security-user-settings-tab.spec.ts:48:13 › Security user settings tab › with posthog enabled › should contain section to set ID server: playwright/e2e/settings/security-user-settings-tab.spec.ts#L28
3) [Firefox] › settings/security-user-settings-tab.spec.ts:48:13 › Security user settings tab › with posthog enabled › should contain section to set ID server Test timeout of 30000ms exceeded while running "beforeEach" hook. 26 | }); 27 | > 28 | test.beforeEach(async ({ page, user }) => { | ^ 29 | // Dismiss "Notification" toast 30 | await page 31 | .locator(".mx_Toast_toast", { hasText: "Notifications" }) at /home/runner/work/element-web/element-web/playwright/e2e/settings/security-user-settings-tab.spec.ts:28:14
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L1
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Test timeout of 30000ms exceeded.
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L31
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_RoomList').getByRole('button', { name: 'Start chat' }) - locator resolved to <div tabindex="-1" role="button" aria-label="Start chat" class="mx_AccessibleButton mx_RoomSublist_auxButton"></div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 49 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 29 | 30 | const startDMWithBob = async (page: Page, bob: Bot) => { > 31 | await page.locator(".mx_RoomList").getByRole("button", { name: "Start chat" }).click(); | ^ 32 | await page.getByTestId("invite-dialog-input").fill(bob.credentials.userId); 33 | await page.locator(".mx_InviteDialog_tile_nameStack_name").getByText("Bob").click(); 34 | await expect( at startDMWithBob (/home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:31:84) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:210:19
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L1
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L31
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_RoomList').getByRole('button', { name: 'Start chat' }) - locator resolved to <div tabindex="-1" role="button" aria-label="Start chat" class="mx_AccessibleButton mx_RoomSublist_auxButton"></div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 38 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 29 | 30 | const startDMWithBob = async (page: Page, bob: Bot) => { > 31 | await page.locator(".mx_RoomList").getByRole("button", { name: "Start chat" }).click(); | ^ 32 | await page.getByTestId("invite-dialog-input").fill(bob.credentials.userId); 33 | await page.locator(".mx_InviteDialog_tile_nameStack_name").getByText("Bob").click(); 34 | await expect( at startDMWithBob (/home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:31:84) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:210:19
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L1
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work: playwright/e2e/crypto/crypto.spec.ts#L31
1) [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_RoomList').getByRole('button', { name: 'Start chat' }) - locator resolved to <div tabindex="-1" role="button" aria-label="Start chat" class="mx_AccessibleButton mx_RoomSublist_auxButton"></div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 40 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <div>…</div> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 29 | 30 | const startDMWithBob = async (page: Page, bob: Bot) => { > 31 | await page.locator(".mx_RoomList").getByRole("button", { name: "Start chat" }).click(); | ^ 32 | await page.getByTestId("invite-dialog-input").fill(bob.credentials.userId); 33 | await page.locator(".mx_InviteDialog_tile_nameStack_name").getByText("Bob").click(); 34 | await expect( at startDMWithBob (/home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:31:84) at /home/runner/work/element-web/element-web/playwright/e2e/crypto/crypto.spec.ts:210:19
[Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message: playwright/e2e/crypto/decryption-failure-messages.spec.ts#L1
2) [Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message Test timeout of 30000ms exceeded.
[Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message: playwright/e2e/crypto/decryption-failure-messages.spec.ts#L149
2) [Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: 'Test room' }) - locator resolved to <div tabindex="-1" role="treeitem" aria-selected="false" aria-label="Test room" class="mx_AccessibleButton mx_RoomTile">…</div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 48 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 147 | page.getByRole("group", { name: "Invites" }).locator(".mx_RoomSublist_tiles").getByRole("treeitem"), 148 | ).toHaveCount(1); > 149 | await page.getByRole("treeitem", { name: "Test room" }).click(); | ^ 150 | await page.locator(".mx_RoomView").getByRole("button", { name: "Accept" }).click(); 151 | 152 | // Bob sends an encrypted event and an undecryptable event at /home/runner/work/element-web/element-web/playwright/e2e/crypto/decryption-failure-messages.spec.ts:149:73
[Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message: playwright/e2e/crypto/decryption-failure-messages.spec.ts#L1
2) [Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message: playwright/e2e/crypto/decryption-failure-messages.spec.ts#L149
2) [Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('treeitem', { name: 'Test room' }) - locator resolved to <div tabindex="-1" role="treeitem" aria-selected="false" aria-label="Test room" class="mx_AccessibleButton mx_RoomTile">…</div> - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 20ms 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 100ms 37 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling - <button tabindex="0" role="button" data-size="sm" data-kind="secondary" class="_button_i91xf_17 _has-icon_i91xf_66">…</button> from <div role="alert" class="mx_ToastContainer mx_ToastContainer_stacked">…</div> subtree intercepts pointer events - retrying click action - waiting 500ms 147 | page.getByRole("group", { name: "Invites" }).locator(".mx_RoomSublist_tiles").getByRole("treeitem"), 148 | ).toHaveCount(1); > 149 | await page.getByRole("treeitem", { name: "Test room" }).click(); | ^ 150 | await page.locator(".mx_RoomView").getByRole("button", { name: "Accept" }).click(); 151 | 152 | // Bob sends an encrypted event and an undecryptable event at /home/runner/work/element-web/element-web/playwright/e2e/crypto/decryption-failure-messages.spec.ts:149:73
end-to-end-tests
Process completed with exit code 1.
Build Element-Web
Cache not found for keys: node-cache-Linux-x64-yarn-92f5077b15755fc085da26b38b8c5c6568e7978aab22ac8dc6aefbd17ead3067
Run Tests [Pinecone] 2/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Pinecone] › pinned-messages/pinned-messages.spec.ts#L1
[Pinecone] › pinned-messages/pinned-messages.spec.ts took 40.7s
Slow Test: [Dendrite] › right-panel/right-panel.spec.ts#L1
[Dendrite] › right-panel/right-panel.spec.ts took 19.2s
Slow Test: [Dendrite] › settings/encryption-user-tab/encryption-tab.spec.ts#L1
[Dendrite] › settings/encryption-user-tab/encryption-tab.spec.ts took 15.5s
Slow Test: [Dendrite] › read-receipts/room-list-order.spec.ts#L1
[Dendrite] › read-receipts/room-list-order.spec.ts took 15.4s
Run Tests [Dendrite] 3/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Dendrite] 3/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Dendrite] 2/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Dendrite] › pinned-messages/pinned-messages.spec.ts#L1
[Dendrite] › pinned-messages/pinned-messages.spec.ts took 41.8s
Slow Test: [Dendrite] › modules/loader.spec.ts#L1
[Dendrite] › modules/loader.spec.ts took 16.1s
Run Tests [Dendrite] 2/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Dendrite] 4/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Dendrite] › timeline/timeline.spec.ts#L1
[Dendrite] › timeline/timeline.spec.ts took 1.0m
Slow Test: [Dendrite] › sliding-sync/sliding-sync.spec.ts#L1
[Dendrite] › sliding-sync/sliding-sync.spec.ts took 45.1s
Run Tests [Dendrite] 4/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Pinecone] 4/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [Pinecone] › timeline/timeline.spec.ts#L1
[Pinecone] › timeline/timeline.spec.ts took 1.0m
Run Tests [Pinecone] 4/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Pinecone] 3/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Pinecone] 3/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Pinecone] › read-receipts/room-list-order.spec.ts#L1
[Pinecone] › read-receipts/room-list-order.spec.ts took 22.8s
Slow Test: [Pinecone] › right-panel/right-panel.spec.ts#L1
[Pinecone] › right-panel/right-panel.spec.ts took 19.5s
Slow Test: [Pinecone] › settings/encryption-user-tab/encryption-tab.spec.ts#L1
[Pinecone] › settings/encryption-user-tab/encryption-tab.spec.ts took 15.9s
Run Tests [Dendrite] 1/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Dendrite] 1/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Dendrite] › messages/messages.spec.ts#L1
[Dendrite] › messages/messages.spec.ts took 46.7s
Slow Test: [Dendrite] › crypto/event-shields.spec.ts#L1
[Dendrite] › crypto/event-shields.spec.ts took 44.9s
Slow Test: [Dendrite] › audio-player/audio-player.spec.ts#L1
[Dendrite] › audio-player/audio-player.spec.ts took 31.4s
Slow Test: [Dendrite] › composer/RTE.spec.ts#L1
[Dendrite] › composer/RTE.spec.ts took 30.6s
Slow Test: [Dendrite] › crypto/device-verification.spec.ts#L1
[Dendrite] › crypto/device-verification.spec.ts took 20.7s
Slow Test: [Pinecone] › messages/messages.spec.ts#L1
[Pinecone] › messages/messages.spec.ts took 46.4s
Slow Test: [Pinecone] › crypto/event-shields.spec.ts#L1
[Pinecone] › crypto/event-shields.spec.ts took 45.7s
Slow Test: [Pinecone] › audio-player/audio-player.spec.ts#L1
[Pinecone] › audio-player/audio-player.spec.ts took 33.2s
Slow Test: [Pinecone] › composer/RTE.spec.ts#L1
[Pinecone] › composer/RTE.spec.ts took 30.0s
Slow Test: [Pinecone] › crypto/device-verification.spec.ts#L1
[Pinecone] › crypto/device-verification.spec.ts took 20.3s
Run Tests [Pinecone] 1/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Pinecone] 1/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [Chrome] › read-receipts/high-level.spec.ts#L1
[Chrome] › read-receipts/high-level.spec.ts took 2.8m
Slow Test: [Chrome] › read-receipts/new-messages-in-threads.spec.ts#L1
[Chrome] › read-receipts/new-messages-in-threads.spec.ts took 1.0m
Slow Test: [Chrome] › pinned-messages/pinned-messages.spec.ts#L1
[Chrome] › pinned-messages/pinned-messages.spec.ts took 58.8s
Slow Test: [Chrome] › read-receipts/editing-messages-in-threads.spec.ts#L1
[Chrome] › read-receipts/editing-messages-in-threads.spec.ts took 39.8s
Slow Test: [Chrome] › read-receipts/editing-messages-main-timeline.spec.ts#L1
[Chrome] › read-receipts/editing-messages-main-timeline.spec.ts took 39.5s
Run Tests [Chrome] 2/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Chrome] 2/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [Chrome] 1/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Chrome] › messages/messages.spec.ts#L1
[Chrome] › messages/messages.spec.ts took 57.4s
Slow Test: [Chrome] › crypto/event-shields.spec.ts#L1
[Chrome] › crypto/event-shields.spec.ts took 51.7s
Slow Test: [Chrome] › audio-player/audio-player.spec.ts#L1
[Chrome] › audio-player/audio-player.spec.ts took 37.2s
Slow Test: [Chrome] › composer/RTE.spec.ts#L1
[Chrome] › composer/RTE.spec.ts took 35.3s
Slow Test: [Chrome] › crypto/crypto.spec.ts#L1
[Chrome] › crypto/crypto.spec.ts took 33.8s
Run Tests [Chrome] 1/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [Chrome] › read-receipts/redactions-in-threads.spec.ts#L1
[Chrome] › read-receipts/redactions-in-threads.spec.ts took 1.5m
Slow Test: [Chrome] › read-receipts/redactions-main-timeline.spec.ts#L1
[Chrome] › read-receipts/redactions-main-timeline.spec.ts took 1.1m
Slow Test: [Chrome] › read-receipts/reactions-in-threads.spec.ts#L1
[Chrome] › read-receipts/reactions-in-threads.spec.ts took 56.4s
Slow Test: [Chrome] › read-receipts/read-receipts.spec.ts#L1
[Chrome] › read-receipts/read-receipts.spec.ts took 47.1s
Slow Test: [Chrome] › read-receipts/redactions-thread-roots.spec.ts#L1
[Chrome] › read-receipts/redactions-thread-roots.spec.ts took 31.4s
Run Tests [Chrome] 3/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Chrome] 3/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Run Tests [WebKit] 2/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [WebKit] 2/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [WebKit] › read-receipts/high-level.spec.ts#L1
[WebKit] › read-receipts/high-level.spec.ts took 3.1m
Slow Test: [WebKit] › read-receipts/new-messages-in-threads.spec.ts#L1
[WebKit] › read-receipts/new-messages-in-threads.spec.ts took 1.3m
Slow Test: [WebKit] › pinned-messages/pinned-messages.spec.ts#L1
[WebKit] › pinned-messages/pinned-messages.spec.ts took 1.3m
Slow Test: [WebKit] › read-receipts/new-messages-main-timeline.spec.ts#L1
[WebKit] › read-receipts/new-messages-main-timeline.spec.ts took 54.6s
Slow Test: [WebKit] › read-receipts/editing-messages-in-threads.spec.ts#L1
[WebKit] › read-receipts/editing-messages-in-threads.spec.ts took 53.4s
Run Tests [Chrome] 4/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Chrome] 4/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [Chrome] › spotlight/spotlight.spec.ts#L1
[Chrome] › spotlight/spotlight.spec.ts took 2.1m
Slow Test: [Chrome] › login/login-consent.spec.ts#L1
[Chrome] › login/login-consent.spec.ts took 1.1m
Slow Test: [Chrome] › sliding-sync/sliding-sync.spec.ts#L1
[Chrome] › sliding-sync/sliding-sync.spec.ts took 51.6s
Slow Test: [Chrome] › spaces/threads-activity-centre/threadsActivityCentre.spec.ts#L1
[Chrome] › spaces/threads-activity-centre/threadsActivityCentre.spec.ts took 49.6s
Slow Test: [Chrome] › spaces/spaces.spec.ts#L1
[Chrome] › spaces/spaces.spec.ts took 30.8s
Slow Test: [Firefox] › read-receipts/high-level.spec.ts#L1
[Firefox] › read-receipts/high-level.spec.ts took 3.4m
Slow Test: [Firefox] › read-receipts/new-messages-in-threads.spec.ts#L1
[Firefox] › read-receipts/new-messages-in-threads.spec.ts took 1.6m
Slow Test: [Firefox] › pinned-messages/pinned-messages.spec.ts#L1
[Firefox] › pinned-messages/pinned-messages.spec.ts took 1.6m
Slow Test: [Firefox] › read-receipts/new-messages-main-timeline.spec.ts#L1
[Firefox] › read-receipts/new-messages-main-timeline.spec.ts took 1.1m
Slow Test: [Firefox] › read-receipts/editing-messages-main-timeline.spec.ts#L1
[Firefox] › read-receipts/editing-messages-main-timeline.spec.ts took 1.1m
Run Tests [Firefox] 2/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Firefox] 2/4
Failed to save: Failed to CreateCacheEntry: Received non-retryable error: Failed request: (409) Conflict: cache entry with the same key, version, and scope already exists
Slow Test: [WebKit] › messages/messages.spec.ts#L1
[WebKit] › messages/messages.spec.ts took 1.7m
Slow Test: [WebKit] › composer/RTE.spec.ts#L1
[WebKit] › composer/RTE.spec.ts took 1.6m
Slow Test: [WebKit] › accessibility/keyboard-navigation.spec.ts#L1
[WebKit] › accessibility/keyboard-navigation.spec.ts took 29.9s
Slow Test: [WebKit] › knock/knock-into-room.spec.ts#L1
[WebKit] › knock/knock-into-room.spec.ts took 28.5s
Slow Test: [WebKit] › integration-manager/kick.spec.ts#L1
[WebKit] › integration-manager/kick.spec.ts took 28.0s
Run Tests [WebKit] 1/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [WebKit] 3/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [WebKit] › read-receipts/redactions-in-threads.spec.ts#L1
[WebKit] › read-receipts/redactions-in-threads.spec.ts took 2.1m
Slow Test: [WebKit] › read-receipts/redactions-main-timeline.spec.ts#L1
[WebKit] › read-receipts/redactions-main-timeline.spec.ts took 1.4m
Slow Test: [WebKit] › read-receipts/redactions-thread-roots.spec.ts#L1
[WebKit] › read-receipts/redactions-thread-roots.spec.ts took 40.1s
Slow Test: [WebKit] › right-panel/right-panel.spec.ts#L1
[WebKit] › right-panel/right-panel.spec.ts took 35.7s
Slow Test: [WebKit] › settings/account-user-settings-tab.spec.ts#L1
[WebKit] › settings/account-user-settings-tab.spec.ts took 28.2s
Slow Test: [WebKit] › spotlight/spotlight.spec.ts#L1
[WebKit] › spotlight/spotlight.spec.ts took 2.6m
Slow Test: [WebKit] › login/login-consent.spec.ts#L1
[WebKit] › login/login-consent.spec.ts took 1.4m
Slow Test: [WebKit] › timeline/timeline.spec.ts#L1
[WebKit] › timeline/timeline.spec.ts took 1.0m
Slow Test: [WebKit] › spaces/spaces.spec.ts#L1
[WebKit] › spaces/spaces.spec.ts took 35.1s
Slow Test: [WebKit] › threads/threads.spec.ts#L1
[WebKit] › threads/threads.spec.ts took 32.1s
Run Tests [WebKit] 4/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Run Tests [Firefox] 3/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Firefox] › read-receipts/redactions-in-threads.spec.ts#L1
[Firefox] › read-receipts/redactions-in-threads.spec.ts took 2.5m
Slow Test: [Firefox] › read-receipts/redactions-main-timeline.spec.ts#L1
[Firefox] › read-receipts/redactions-main-timeline.spec.ts took 1.8m
Slow Test: [Firefox] › read-receipts/read-receipts.spec.ts#L1
[Firefox] › read-receipts/read-receipts.spec.ts took 1.2m
Slow Test: [Firefox] › read-receipts/reactions-in-threads.spec.ts#L1
[Firefox] › read-receipts/reactions-in-threads.spec.ts took 1.2m
Slow Test: [Firefox] › read-receipts/redactions-thread-roots.spec.ts#L1
[Firefox] › read-receipts/redactions-thread-roots.spec.ts took 50.1s
Run Tests [Firefox] 4/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
Slow Test: [Firefox] › spotlight/spotlight.spec.ts#L1
[Firefox] › spotlight/spotlight.spec.ts took 3.0m
Slow Test: [Firefox] › login/login-consent.spec.ts#L1
[Firefox] › login/login-consent.spec.ts took 1.3m
Slow Test: [Firefox] › timeline/timeline.spec.ts#L1
[Firefox] › timeline/timeline.spec.ts took 1.1m
Slow Test: [Firefox] › spaces/spaces.spec.ts#L1
[Firefox] › spaces/spaces.spec.ts took 55.2s
Slow Test: [Firefox] › threads/threads.spec.ts#L1
[Firefox] › threads/threads.spec.ts took 23.9s
Slow Test: [Firefox] › messages/messages.spec.ts#L1
[Firefox] › messages/messages.spec.ts took 1.7m
Slow Test: [Firefox] › composer/RTE.spec.ts#L1
[Firefox] › composer/RTE.spec.ts took 1.0m
Slow Test: [Firefox] › crypto/device-verification.spec.ts#L1
[Firefox] › crypto/device-verification.spec.ts took 47.0s
Slow Test: [Firefox] › integration-manager/kick.spec.ts#L1
[Firefox] › integration-manager/kick.spec.ts took 38.2s
Slow Test: [Firefox] › knock/knock-into-room.spec.ts#L1
[Firefox] › knock/knock-into-room.spec.ts took 34.0s
Run Tests [Firefox] 1/4
Cache not found for keys: Linux-playwright-@playwright/test@1.49.1
🎭 Playwright Run Summary
103 skipped 15 passed (1.1m)
🎭 Playwright Run Summary
1 flaky [Dendrite] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit 61 skipped 56 passed (3.1m)
🎭 Playwright Run Summary
103 skipped 15 passed (1.4m)
🎭 Playwright Run Summary
64 skipped 56 passed (3.7m)
🎭 Playwright Run Summary
1 flaky [Pinecone] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch 64 skipped 55 passed (4.1m)
🎭 Playwright Run Summary
1 flaky [Pinecone] › settings/encryption-user-tab/recovery.spec.ts:54:9 › Recovery section in Encryption tab › should setup the recovery key @screenshot @no-webkit 63 skipped 54 passed (3.2m)
🎭 Playwright Run Summary
33 skipped 91 passed (5.3m)
🎭 Playwright Run Summary
33 skipped 91 passed (5.5m)
🎭 Playwright Run Summary
1 flaky [Chrome] › read-receipts/new-messages-main-timeline.spec.ts:53:17 › Read receipts › new messages › in the main timeline › Reading an older message leaves the room unread @mergequeue 44 skipped 73 passed (9.2m)
🎭 Playwright Run Summary
1 skipped 123 passed (9.1m)
🎭 Playwright Run Summary
2 skipped 116 passed (9.2m)
🎭 Playwright Run Summary
44 skipped 74 passed (10.8m)
🎭 Playwright Run Summary
2 flaky [Chrome] › timeline/timeline.spec.ts:140:13 › Timeline › configure room › should create and configure a room on IRC layout @screenshot [Chrome] › timeline/timeline.spec.ts:160:13 › Timeline › configure room › should have an expanded generic event list summary (GELS) on IRC layout @screenshot 2 skipped 116 passed (12.0m)
🎭 Playwright Run Summary
1 flaky [Firefox] › read-receipts/new-messages-thread-roots.spec.ts:38:17 › Read receipts › new messages › thread roots › Reading a thread root within the thread view marks it as read in the main timeline @mergequeue 44 skipped 73 passed (13.3m)
🎭 Playwright Run Summary
6 failed [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=true › by recovery code [WebKit] › crypto/crypto.spec.ts:106:17 › Cryptography › setting up secure key backup should work isDeviceVerified=false › by recovery code [WebKit] › crypto/crypto.spec.ts:164:9 › Cryptography › Can reset cross-signing keys ─────────── [WebKit] › crypto/decryption-failure-messages.spec.ts:33:13 › Cryptography › decryption failure messages › should handle device-relative historical messages [WebKit] › crypto/event-shields.spec.ts:163:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup [WebKit] › crypto/logout.spec.ts:35:9 › Logout tests › If backup is set up show standard confirm 1 flaky [WebKit] › lazy-loading/lazy-loading.spec.ts:126:9 › Lazy Loading › should handle lazy loading properly even when offline 17 skipped 100 passed (15.2m)
🎭 Playwright Run Summary
1 failed [WebKit] › read-receipts/read-receipts.spec.ts:276:9 › Read receipts › Should send the correct receipts @mergequeue 3 flaky [WebKit] › read-receipts/reactions-in-threads.spec.ts:19:17 › Read receipts › reactions › in threads › A reaction to a threaded message does not make the room unread @mergequeue [WebKit] › room/room.spec.ts:56:9 › Room Directory › should memorize the timeline position when switch Room A -> Room B -> Room A [WebKit] › room_options/marked_unread.spec.ts:25:9 › Mark as Unread › should mark a room as unread 11 skipped 103 passed (14.4m)
🎭 Playwright Run Summary
3 failed [WebKit] › crypto/dehydration.spec.ts:41:9 › Dehydration › 'Set up secure backup' creates dehydrated device [WebKit] › crypto/dehydration.spec.ts:67:9 › Dehydration › Reset recovery key during login re-creates dehydrated device [WebKit] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch 2 flaky [WebKit] › crypto/backups-mas.spec.ts:23:9 › Encryption state after registration › Key backup is enabled by default [WebKit] › spaces/threads-activity-centre/threadsActivityCentre.spec.ts:25:9 › Threads Activity Centre › should have the button correctly aligned and displayed in the space panel when expanded @no-firefox @screenshot 18 skipped 97 passed (16.6m)
🎭 Playwright Run Summary
5 failed [Firefox] › read-receipts/room-list-order.spec.ts:15:13 › Read receipts › Room list order › Rooms with unread messages appear at the top of room list if 'unread first' is selected @mergequeue [Firefox] › read-receipts/room-list-order.spec.ts:33:13 › Read receipts › Room list order › Rooms with unread threads appear at the top of room list if 'unread first' is selected @mergequeue [Firefox] › room/room-header.spec.ts:108:17 › Room Header › with a video room › and with feature_notifications enabled › should render buttons for chat, room info, threads and facepile @screenshot [Firefox] › room/room.spec.ts:18:9 › Room Directory › should switch between existing dm rooms without a loader [Firefox] › room-directory/room-directory.spec.ts:58:9 › Room Directory › should allow finding published rooms in directory @screenshot 7 skipped 106 passed (22.2m)
🎭 Playwright Run Summary
10 failed [Firefox] › crypto/backups-mas.spec.ts:35:9 › Encryption state after registration › user is prompted to set up recovery [Firefox] › settings/security-user-settings-tab.spec.ts:39:17 › Security user settings tab › with posthog enabled › AnalyticsLearnMoreDialog › should be rendered properly @screenshot [Firefox] › settings/security-user-settings-tab.spec.ts:48:13 › Security user settings tab › with posthog enabled › should contain section to set ID server [Firefox] › settings/security-user-settings-tab.spec.ts:57:13 › Security user settings tab › with posthog enabled › should enable show integrations as enabled [Firefox] › sliding-sync/sliding-sync.spec.ts:88:5 › Sliding Sync › should render the Rooms list in reverse chronological order by default and allowing sorting A-Z [Firefox] › sliding-sync/sliding-sync.spec.ts:365:5 › Sliding Sync › should send unsubscribe_rooms for every room switch [Firefox] › toasts/analytics-toast.spec.ts:16:9 › Analytics Toast › should not show an analytics toast if config has nothing about posthog [Firefox] › toasts/analytics-toast.spec.ts:35:13 › Analytics Toast › with posthog enabled › should show an analytics toast which can be accepted [Firefox] › toasts/analytics-toast.spec.ts:40:13 › Analytics Toast › with posthog enabled › should show an analytics toast which can be rejected [Firefox] › voip/pstn.spec.ts:23:9 › PSTN › should render dialpad as expected @screenshot ────── 2 flaky [Firefox] › sliding-sync/sliding-sync.spec.ts:137:5 › Sliding Sync › should not move the selected room: it should be sticky [Firefox] › sliding-sync/sliding-sync.spec.ts:191:5 › Sliding Sync › should not show unread indicators 28 skipped 80 passed (25.8m)
🎭 Playwright Run Summary
9 failed [Firefox] › crypto/crypto.spec.ts:205:9 › Cryptography › creating a DM should work, being e2e-encrypted / user verification @screenshot [Firefox] › crypto/decryption-failure-messages.spec.ts:100:17 › Cryptography › decryption failure messages › non-joined historical messages › should display undecryptable non-joined historical messages with a different message [Firefox] › crypto/decryption-failure-messages.spec.ts:205:17 › Cryptography › decryption failure messages › non-joined historical messages › should be able to jump to a message sent before our last join event [Firefox] › crypto/event-shields.spec.ts:61:13 › Cryptography › event shields › should show the correct shield on e2e events [Firefox] › crypto/toasts.spec.ts:31:9 › Key storage out of sync toast › should prompt for recovery key if 'enter recovery key' pressed @screenshot [Firefox] › crypto/toasts.spec.ts:44:9 › Key storage out of sync toast › should open settings to reset flow if 'forgot recovery key' pressed [Firefox] › crypto/user-verification.spec.ts:34:9 › User verification › can receive a verification request when there is no existing DM [Firefox] › crypto/user-verification.spec.ts:89:9 › User verification › can abort emoji verification when emoji mismatch [Firefox] › invite/invite-dialog.spec.ts:76:9 › Invite dialog › should support inviting a user to Direct Messages @screenshot 11 skipped 104 passed (26.9m)

Artifacts

Produced during runtime
Name Size
all-blob-reports-Chrome-1 Expired
786 KB
all-blob-reports-Chrome-2 Expired
5.89 MB
all-blob-reports-Chrome-3 Expired
468 KB
all-blob-reports-Chrome-4 Expired
7.11 MB
all-blob-reports-Dendrite-1 Expired
284 KB
all-blob-reports-Dendrite-2 Expired
69 KB
all-blob-reports-Dendrite-3 Expired
6.39 MB
all-blob-reports-Dendrite-4 Expired
564 KB
all-blob-reports-Firefox-1 Expired
77.6 MB
all-blob-reports-Firefox-2 Expired
17.2 MB
all-blob-reports-Firefox-3 Expired
61.1 MB
all-blob-reports-Firefox-4 Expired
63.7 MB
all-blob-reports-Pinecone-1 Expired
285 KB
all-blob-reports-Pinecone-2 Expired
69.8 KB
all-blob-reports-Pinecone-3 Expired
6.27 MB
all-blob-reports-Pinecone-4 Expired
3.45 MB
all-blob-reports-WebKit-1 Expired
46.4 MB
all-blob-reports-WebKit-2 Expired
395 KB
all-blob-reports-WebKit-3 Expired
24.5 MB
all-blob-reports-WebKit-4 Expired
27.4 MB
html-report
316 MB
webapp Expired
26.8 MB