Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

End to End Tests

End to End Tests #8433

Triggered via workflow run April 5, 2024 14:17
@hughnshughns
completed 015b938
Status Failure
Total duration 26m 1s
Artifacts 9

end-to-end-tests.yaml

on: workflow_run
Prepare
5s
Prepare
Matrix: tests
Report results
1m 9s
Report results
Fit to window
Zoom out
Zoom in

Annotations

15 errors, 7 warnings, and 1 notice
Run Tests 2/8
The process '/usr/bin/xvfb-run' failed with exit code 1
Run Tests 8/8
The process '/usr/bin/xvfb-run' failed with exit code 1
Run Tests 4/8
The process '/usr/bin/xvfb-run' failed with exit code 1
Run Tests 5/8
The process '/usr/bin/xvfb-run' failed with exit code 1
Run Tests 1/8
The process '/usr/bin/xvfb-run' failed with exit code 1
[Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
1) [Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/complete-security.spec.ts:30:9
[Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
1) [Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/complete-security.spec.ts:30:9
[Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
1) [Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/complete-security.spec.ts:30:9
[Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
2) [Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/crypto.spec.ts:462:13
[Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
2) [Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/crypto.spec.ts:462:13
[Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
2) [Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/crypto.spec.ts:462:13
[Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
3) [Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/logout.spec.ts:22:9
[Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
3) [Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/logout.spec.ts:22:9
[Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
3) [Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/logout.spec.ts:22:9
[Legacy Crypto] › crypto/logout.spec.ts:41:9 › Logout tests › If backup is set up show standard confirm: matrix-react-sdk/playwright/e2e/crypto/utils.ts#L158
4) [Legacy Crypto] › crypto/logout.spec.ts:41:9 › Logout tests › If backup is set up show standard confirm Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Sign in' }) resolved to 2 elements: 1) <div tabindex="0" role="button" class="mx_AccessibleB…>…</div> aka getByRole('button', { name: 'Sign in with QR code' }) 2) <input type="submit" value="Sign in" class="mx_Login_su…/> aka getByRole('button', { name: 'Sign in', exact: true }) Call log: - waiting for getByRole('button', { name: 'Sign in' }) at crypto/utils.ts:158 156 | await page.getByRole("textbox", { name: "Username" }).fill(credentials.userId); 157 | await page.getByPlaceholder("Password").fill(credentials.password); > 158 | await page.getByRole("button", { name: "Sign in" }).click(); | ^ 159 | 160 | // if a securityKey was given, verify the new device 161 | if (securityKey !== undefined) { at logIntoElement (/home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/utils.ts:158:57) at /home/runner/work/matrix-react-sdk/matrix-react-sdk/matrix-react-sdk/playwright/e2e/crypto/logout.spec.ts:22:9
Prepare
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: Sibz/github-status-action@071b5370da85afbb16637d6eed8524a06bc2053e. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Report results
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: Sibz/github-status-action@071b5370da85afbb16637d6eed8524a06bc2053e, bobheadxi/deployments@88ce5600046c82542f8246ac287d0a53c461bca3, actions/github-script@v6, nwtgck/actions-netlify@7a92f00dde8c92a5a9e8385ec2919775f7647352. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Slow Test: [Rust Crypto] › crypto/verification.spec.ts#L1
[Rust Crypto] › crypto/verification.spec.ts took 7.4m
Slow Test: [Legacy Crypto] › crypto/verification.spec.ts#L1
[Legacy Crypto] › crypto/verification.spec.ts took 7.4m
Slow Test: [Rust Crypto] › read-receipts/redactions.spec.ts#L1
[Rust Crypto] › read-receipts/redactions.spec.ts took 5.8m
Slow Test: [Legacy Crypto] › read-receipts/redactions.spec.ts#L1
[Legacy Crypto] › read-receipts/redactions.spec.ts took 5.3m
Slow Test: [Rust Crypto] › read-receipts/new-messages.spec.ts#L1
[Rust Crypto] › read-receipts/new-messages.spec.ts took 4.1m
🎭 Playwright Run Summary
32 failed [Legacy Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device [Legacy Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup [Legacy Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup [Legacy Crypto] › crypto/logout.spec.ts:41:9 › Logout tests › If backup is set up show standard confirm [Legacy Crypto] › crypto/logout.spec.ts:57:9 › Logout tests › Logout directly if the user has no room keys [Legacy Crypto] › crypto/staged-rollout.spec.ts:22:9 › Adoption of rust stack › Test migration of existing logins when rollout is 100% [Legacy Crypto] › crypto/staged-rollout.spec.ts:80:9 › Adoption of rust stack › Test new logins by default on rust stack [Legacy Crypto] › crypto/staged-rollout.spec.ts:118:9 › Adoption of rust stack › Test default is to not rollout existing logins [Legacy Crypto] › crypto/staged-rollout.spec.ts:158:9 › Adoption of rust stack › Migrate using labflag should work [Legacy Crypto] › crypto/staged-rollout.spec.ts:201:9 › Adoption of rust stack › Test migration of room shields [Legacy Crypto] › crypto/verification.spec.ts:76:9 › Device verification › Verify device with SAS during login [Legacy Crypto] › crypto/verification.spec.ts:102:9 › Device verification › Verify device with QR code during login [Legacy Crypto] › crypto/verification.spec.ts:147:9 › Device verification › Verify device with Security Phrase during login [Legacy Crypto] › crypto/verification.spec.ts:168:9 › Device verification › Verify device with Security Key during login [Legacy Crypto] › crypto/verification.spec.ts:191:9 › Device verification › Handle incoming verification request with SAS [Legacy Crypto] › login/login.spec.ts:33:13 › Login › m.login.password › logs in with an existing account and lands on the home screen [Legacy Crypto] › login/overwrite_login.spec.ts:21:9 › Overwrite login action › Try replace existing login with new one [Legacy Crypto] › presence/presence.spec.ts:26:13 › Presence tests › bob unreachable › renders unreachable presence state correctly [Legacy Crypto] › timeline/timeline.spec.ts:1023:13 › Timeline › message sending › should send, reply, and display long strings without overflowing [Rust Crypto] › crypto/complete-security.spec.ts:25:9 › Complete security › should go straight to the welcome screen if we have no signed device [Rust Crypto] › crypto/crypto.spec.ts:438:13 › Cryptography › event shields › Should show a grey padlock for a key restored from backup [Rust Crypto] › crypto/logout.spec.ts:25:9 › Logout tests › Ask to set up recovery on logout if not setup [Rust Crypto] › crypto/logout.spec.ts:41:9 › Logout tests › If backup is set up show standard confirm [Rust Crypto] › crypto/logout.spec.ts:57:9 › Logout tests › Logout directly if the user has no room keys [Rust Crypto] › crypto/verification.spec.ts:76:9 › Device verification › Verify device with SAS during login [Rust Crypto] › crypto/verification.spec.ts:102:9 › Device verification › Verify device with QR code during login [Rust Crypto] › crypto/verification.spec.ts:147:9 › Device verification › Verify device with Security Phrase during login [Rust Crypto] › crypto/verification.spec.ts:168:9 › Device verification › Verify device with Security Key during login [Rust Crypto] › crypto/verification.spec.ts:191:9 › Device verification › Handle incoming verification request with SAS [Rust Crypto] › login/login.spec.ts:33:13 › Login › m.login.password › logs in with an existing account and lands on the home screen [Rust Crypto] › login/overwrite_login.spec.ts:21:9 › Overwrite login action › Try replace existing login with new one [Rust Crypto] › timeline/timeline.spec.ts:1023:13 › Timeline › message sending › should send, reply, and display long strings without overflowing 3 f

Artifacts

Produced during runtime
Name Size
all-blob-reports-1 Expired
114 MB
all-blob-reports-2 Expired
4.38 MB
all-blob-reports-3 Expired
1000 KB
all-blob-reports-4 Expired
15.1 MB
all-blob-reports-5 Expired
87.3 MB
all-blob-reports-6 Expired
4.32 MB
all-blob-reports-7 Expired
963 KB
all-blob-reports-8 Expired
8.19 MB
html-report--attempt-1 Expired
229 MB