Skip to content

Migrate batch of tests from Jest to Vitest #7962

Migrate batch of tests from Jest to Vitest

Migrate batch of tests from Jest to Vitest #7962

Triggered via pull request September 1, 2026 12:37
Status Success
Total duration 22m 15s
Artifacts 9

build-and-test.yaml

on: pull_request
Build Element Web
1m 57s
Build Element Web
Prepare Element Desktop  /  Prepare
43s
Prepare Element Desktop / Prepare
Matrix: playwright_ew
Modules Playwright tests
Modules Playwright tests
Matrix: Desktop Linux
Matrix: Desktop Windows
Waiting for pending jobs
Desktop macOS  /  Build macOS Universal
Desktop macOS / Build macOS Universal
Desktop macOS  /  ...  /  test
Desktop macOS / Test macOS Universal / test
end-to-end-tests
44s
end-to-end-tests
Fit to window
Zoom out
Zoom in

Annotations

3 errors, 1 warning, and 5 notices
[Chrome] › playwright/e2e/composer/RTE.spec.ts:209:9 › Composer › Rich text editor › can paste a file: apps/web/playwright/pages/ElementAppPage.ts#L266
2) [Chrome] › playwright/e2e/composer/RTE.spec.ts:209:9 › Composer › Rich text editor › can paste a file Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('.mx_Dialog').getByRole('button', { name: 'Upload' }) at ../pages/ElementAppPage.ts:266 264 | [buffer.toString("base64"), name, type], 265 | ); > 266 | await this.page.locator(".mx_Dialog").getByRole("button", { name: "Upload" }).click(); | ^ 267 | } 268 | 269 | /** at ElementAppPage.composerDragAndPasteFile (/home/runner/work/element-web/element-web/apps/web/playwright/pages/ElementAppPage.ts:266:87) at /home/runner/work/element-web/element-web/apps/web/playwright/e2e/composer/RTE.spec.ts:210:13
[Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:123:9 › Encryption tab › when encryption is set up › should warn before turning off key storage @screenshot: apps/web/playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts#L127
2) [Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:123:9 › Encryption tab › when encryption is set up › should warn before turning off key storage @screenshot Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('switch', { name: 'Allow key storage' }) 125 | await util.openEncryptionTab(); 126 | > 127 | await page.getByRole("switch", { name: "Allow key storage" }).click(); | ^ 128 | 129 | await expect( 130 | page.getByRole("heading", { name: "Are you sure you want to turn off key storage and delete it?" }), at /home/runner/work/element-web/element-web/apps/web/playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:127:75
[Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:36:9 › Encryption tab › when encryption is set up › should show a 'Verify this device' button if the device is unverified @screenshot: apps/web/playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts#L52
1) [Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:36:9 › Encryption tab › when encryption is set up › should show a 'Verify this device' button if the device is unverified @screenshot Error: locator.scrollIntoViewIfNeeded: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('heading', { name: 'Key storage' }) 50 | 51 | // Prevent flakiness by scrolling to top of the tab > 52 | await page.getByRole("heading", { name: "Key storage" }).scrollIntoViewIfNeeded(); | ^ 53 | 54 | await expect(content).toMatchScreenshot("default-tab.png", { 55 | mask: [content.getByTestId("deviceId"), content.getByTestId("sessionKey")], at /home/runner/work/element-web/element-web/apps/web/playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:52:74
Desktop Linux (static, amd64, false) / Build Linux amd64 SQLCipher static
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: nbucic/variable-mapper@0673f6891a0619ba7c002ecfed0f9f4f39017b6f. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
🎭 Playwright Run Summary
1 flaky [Chrome] › playwright/e2e/left-panel/room-list-panel/room-list.spec.ts:192:13 › Room list › Room list › Shortcuts › should select the next unread room 1 skipped 144 passed (12.5m)
🎭 Playwright Run Summary
1 skipped 6 passed (19.6s)
🎭 Playwright Run Summary
3 flaky [Chrome] › playwright/e2e/accessibility/keyboard-navigation.spec.ts:110:5 › Landmark navigation tests › without an open room [Chrome] › playwright/e2e/composer/RTE.spec.ts:209:9 › Composer › Rich text editor › can paste a file [Chrome] › playwright/e2e/editing/editing.spec.ts:72:5 › Editing › should render and interact with the message edit history dialog @screenshot 151 passed (13.7m)
🎭 Playwright Run Summary
3 flaky [Chrome] › playwright/e2e/oidc/oidc-native.spec.ts:111:5 › OIDC Native › can log in to an existing MAS account @no-firefox @no-webkit @screenshot [Chrome] › playwright/e2e/oidc/oidc-native.spec.ts:147:9 › OIDC Native › with force_verification on › verify dialog cannot be dismissed @no-firefox @no-webkit @screenshot [Chrome] › playwright/e2e/timeline/timeline.spec.ts:581:9 › Timeline › message displaying › should set inline start padding to a hidden event line @screenshot 132 passed (16.5m)
🎭 Playwright Run Summary
4 flaky [Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:36:9 › Encryption tab › when encryption is set up › should show a 'Verify this device' button if the device is unverified @screenshot [Chrome] › playwright/e2e/settings/encryption-user-tab/encryption-tab.spec.ts:123:9 › Encryption tab › when encryption is set up › should warn before turning off key storage @screenshot [Chrome] › playwright/e2e/spotlight/spotlight.spec.ts:417:13 › Spotlight › light theme legibility › should have legible text across Spotlight surfaces [Chrome] › playwright/e2e/spotlight/spotlight.spec.ts:417:13 › Spotlight › dark theme legibility › should have legible text across Spotlight surfaces 3 skipped 158 passed (17.3m)

Artifacts

Produced during runtime
Name Size Digest
blob-report-Chrome-1 Expired
14.1 MB
sha256:416cfb0d10fbeec9c5d09c076f361b751f9e7bbd8378f07b04a37d568720793c
blob-report-Chrome-2 Expired
8.61 MB
sha256:38737912668f75573f6895ad9d6432da42ec976cc3119fc92abd5e074b53164d
blob-report-Chrome-3 Expired
30.6 MB
sha256:36e6ddaff308f4a366add33d34c37fb81dfad1c50eb90793bd189b7df84029bf
blob-report-Chrome-4 Expired
18.5 MB
sha256:7227f0da1876026c0aaa4f64a2a72bd7feac6ea91222f0124887497ce8c73f60
blob-report-linux-amd64-sqlcipher-static Expired
47.5 KB
sha256:c32f81d26e45273abff2881ec95248151ffa0fceb2071a85812d990ac5690f36
desktop-prepare Expired
40 MB
sha256:0c08313b37f128738352ab4c835e381adf96a80480b713eaf2ff9ed4f1bd5032
html-report
68.8 MB
sha256:349fa8228bc1d3a7cb4c63bb5c322b0fe46a08b7783ee343eb2370000621427e
linux-amd64-sqlcipher-static Expired
294 MB
sha256:78f836bbe369c3bcb7ca14e43032b23f431da122069ad8ed5f8276604ee2671e
webapp Expired
41.1 MB
sha256:5907b07e4acd1c6cad94b9b7fd997286163f2576f054a7d1c1594a504d28b7dc