-
Notifications
You must be signed in to change notification settings - Fork 298
refactor(WPB-21957): create fixture for creating teams + refactor edit tests with it #19804
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor(WPB-21957): create fixture for creating teams + refactor edit tests with it #19804
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #19804 +/- ##
==========================================
+ Coverage 43.45% 43.46% +0.01%
==========================================
Files 1294 1294
Lines 32544 32544
Branches 7230 7230
==========================================
+ Hits 14141 14146 +5
+ Misses 16691 16687 -4
+ Partials 1712 1711 -1 🚀 New features to boost your workflow:
|
|
🔗 Download Full Report Artifact 🧪 Playwright Test Summary
Failed Tests:❌ Planning group call with sending various messages during call (tags: TC-8632, crit-flow-web)Location: specs/CriticalFlow/groupCalls-TC-8632.spec.ts:37 Errors: ❌ Group Video call (tags: TC-8637, crit-flow-web)Location: specs/CriticalFlow/groupVideoCall-TC-8637.spec.ts:39 Errors: ❌ New person joins team and setups up device (tags: TC-8635, crit-flow-web)Location: specs/CriticalFlow/joinTeam-TC-8635.spec.ts:38 Errors: Flaky Tests: |
…t tests to use two members of the same team This is an attempt to resolve the race conditions happening when two users connect in a 1:1 for the first time starting the conversation as proteus but it's migrated to MLS automatically. This leads to a message sent during the migration being lost. Team members don't need to go through this step as they are aware of the spoken protocol of other members after login.
…members to create
0f2dec7 to
e9bdd65
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR refactors E2E tests by introducing a new createTeam fixture that simplifies team-based test setup and eliminates race conditions from API-based user connections. The fixture allows creating a team owner with optional members, providing a more reliable testing approach for team scenarios.
Key Changes
- Added
createTeamfixture to create teams with owners and members programmatically - Introduced
connectWithUserutility andwithConnectedUserplugin for team-based user connections - Refactored edit.spec.ts tests to use the new team fixture instead of the previous user-connection approach
- Added supporting API methods for team operations (upgradeUserToTeamOwner, acceptTeamInvitation)
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| test/e2e_tests/test.fixtures.ts | Added createTeam fixture with team creation and member invitation logic; added withConnectedUser plugin; extracted createUser helper function |
| test/e2e_tests/specs/Edit/edit.spec.ts | Refactored all tests to use createTeam fixture and withConnectedUser instead of createUser with api.connectUsers |
| test/e2e_tests/utils/userActions.ts | Added connectWithUser utility for team-based connections; removed German comment |
| test/e2e_tests/backend/teamRepository.e2e.ts | Added acceptTeamInvitation method for team member onboarding |
| test/e2e_tests/backend/authRepository.e2e.ts | Added upgradeUserToTeamOwner method to convert personal users to team owners |
| test/e2e_tests/backend/backendClient.e2e.ts | Changed from MINIMUM_API_VERSION import to hardcoded v13 |
Comments suppressed due to low confidence (1)
test/e2e_tests/backend/authRepository.e2e.ts:100
- [Important] Missing input validation for
teamNameparameter. TheteamNameis passed directly to the API without validation, which could lead to unexpected API errors if empty, too long, or containing invalid characters.
Suggestion: Add validation before the API call:
if (!teamName || teamName.trim().length === 0) {
throw new Error('Team name cannot be empty');
} async upgradeUserToTeamOwner(user: User, teamName: string) {
const res = this.axiosInstance.post(
'upgrade-personal-to-team',
{
name: teamName,
icon: 'default',
},
{
headers: {
Authorization: `Bearer ${user.token}`,
},
},
);
const data = (await res).data;
return {teamId: data.team_id, teamName: data.team_name};
}
public async activateAccount(email: string, code: string) {
await this.axiosInstance.post('activate', {
code,
dryrun: false,
email: email,
});
}
public async bookEmail(email: string) {
await this.axiosInstance.post('activate/send', {
email: email,
});
}
public async loginUser(user: User): Promise<AxiosResponse> {
const response = await this.axiosInstance.post(
'login',
{
6fb2c33 to
4482fae
Compare
|
…t tests with it (#19804) This is an attempt to resolve the race conditions happening when two users connect in a 1:1 for the first time starting the conversation as proteus but it's migrated to MLS automatically. This leads to a message sent during the migration being lost. Team members don't need to go through this step as they are aware of the spoken protocol of other members after login.
* fix: remove call from the call state when a user is left the group (#19790) * chore(deps-dev): bump rimraf from 6.1.0 to 6.1.2 in /server (#19791) Bumps [rimraf](https://github.com/isaacs/rimraf) from 6.1.0 to 6.1.2. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](isaacs/rimraf@v6.1.0...v6.1.2) --- updated-dependencies: - dependency-name: rimraf dependency-version: 6.1.2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * refactor(WPB-21957): create fixture for creating teams + refactor edit tests with it (#19804) This is an attempt to resolve the race conditions happening when two users connect in a 1:1 for the first time starting the conversation as proteus but it's migrated to MLS automatically. This leads to a message sent during the migration being lost. Team members don't need to go through this step as they are aware of the spoken protocol of other members after login. * test(WPB-19966): write "Reply" regression tests (#19760) * test(TC-8038): add test for not replying to a ping * test(TC-8039): add test for not replying to timed messages * test(TC-2994): add test for quote in reply to vanish if source message is removed * test(TC-2996): add test for searching message * test(TC-2997): test for quote in reply to be truncated * test(TC-3002): reply to a picture * test(TC-3003): reply to an audio message * test(TC-3004): reply to video * test(TC-3005): reply to link * test(TC3006): reply to file * test(TC-3007): reply to reply * test(TC-3008): reply to link with text * test(TC-3011): Reply with timed message * test(TC-3013): test clicking the reply * test(TC-3014): test replying in a conversation I'm no longer part of * test(TC-3016): click on mention in reply opens user profile * fix: remove visibility check from sendMessage * test(TC-3009): add test case for replying to a location + util for sending location via testservice * refactor: replace createPagesForUser with new fixtures * refactor(test): use new fixtures for reply tests * refactor: remove no longer used PagePlugin withConversation * fix: accessibility improvements login(https://wearezeta.atlassian.net/browse/WPB-20819) (#19714) * fix: make password toggle button accessible and localised(WPB-21228) * fix: translate type * fix: Login - New view is not announced * fix: make back button accessible WPB-21466 * fix: make external link 2fa accessible(WPB-21279) * fix: password toggle button text alternative(WPB-21228) * fix: make verify account header focusable using screenkey and login subheading style adjustments * fix: add toggle password show/hide label * fix: address review comments * chore: bump core packages * fix: pipeline issues * fix: PR comments * fix: pipeline issues * chore(deps): bump @wireapp/core from 46.46.3 to 46.46.5 (#19793) Bumps [@wireapp/core](https://github.com/wireapp/wire-web-packages) from 46.46.3 to 46.46.5. - [Commits](https://github.com/wireapp/wire-web-packages/compare/@wireapp/[email protected]...@wireapp/[email protected]) --- updated-dependencies: - dependency-name: "@wireapp/core" dependency-version: 46.46.5 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump core-js from 3.46.0 to 3.47.0 (#19797) Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.46.0 to 3.47.0. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.47.0/packages/core-js) --- updated-dependencies: - dependency-name: core-js dependency-version: 3.47.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump emoji-picker-react from 4.15.1 to 4.15.2 (#19802) Bumps [emoji-picker-react](https://github.com/ealush/emoji-picker-react) from 4.15.1 to 4.15.2. - [Release notes](https://github.com/ealush/emoji-picker-react/releases) - [Commits](https://github.com/ealush/emoji-picker-react/commits) --- updated-dependencies: - dependency-name: emoji-picker-react dependency-version: 4.15.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump html-webpack-plugin from 5.6.4 to 5.6.5 (#19800) Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 5.6.4 to 5.6.5. - [Release notes](https://github.com/jantimon/html-webpack-plugin/releases) - [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/main/CHANGELOG.md) - [Commits](jantimon/html-webpack-plugin@v5.6.4...v5.6.5) --- updated-dependencies: - dependency-name: html-webpack-plugin dependency-version: 5.6.5 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump oidc-client-ts from 3.4.0 to 3.4.1 (#19801) Bumps [oidc-client-ts](https://github.com/authts/oidc-client-ts) from 3.4.0 to 3.4.1. - [Release notes](https://github.com/authts/oidc-client-ts/releases) - [Commits](authts/oidc-client-ts@v3.4.0...v3.4.1) --- updated-dependencies: - dependency-name: oidc-client-ts dependency-version: 3.4.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump webpack from 5.102.1 to 5.103.0 (#19796) Bumps [webpack](https://github.com/webpack/webpack) from 5.102.1 to 5.103.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](webpack/webpack@v5.102.1...v5.103.0) --- updated-dependencies: - dependency-name: webpack dependency-version: 5.103.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump workbox-webpack-plugin from 7.3.0 to 7.4.0 (#19799) Bumps [workbox-webpack-plugin](https://github.com/googlechrome/workbox) from 7.3.0 to 7.4.0. - [Release notes](https://github.com/googlechrome/workbox/releases) - [Commits](GoogleChrome/workbox@v7.3.0...v7.4.0) --- updated-dependencies: - dependency-name: workbox-webpack-plugin dependency-version: 7.4.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump stylelint from 16.25.0 to 16.26.0 (#19798) Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.25.0 to 16.26.0. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](stylelint/stylelint@16.25.0...16.26.0) --- updated-dependencies: - dependency-name: stylelint dependency-version: 16.26.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump baseline-browser-mapping from 2.8.28 to 2.8.31 (#19792) Bumps [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) from 2.8.28 to 2.8.31. - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.8.28...v2.8.31) --- updated-dependencies: - dependency-name: baseline-browser-mapping dependency-version: 2.8.31 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(WPB-19968): add tests for self deleting messages (#19805) * test(TC-657): add test for sending ephemeral text message in 1:1 * test(TC-658): add test for sending ephemeral text message in group * refactor: replace util sendTimedMessage with dedicated utils for enabling and disabling timed messages * test(TC-662): Verify timer is applied to all messages until turning it off in 1:1 * test(TC-664): Verify that message with previous timer are deleted on start-up when the timeout passed in 1:1 * refactor: overload createPage fixture to optionally accept a context to reuse * refactor: use team for tests using new fixture * test(TC-675): Verify the message is not deleted for users that didn't read the message * test(TC-3715): set global group conversation timer * refactor(reply-tests): remove unused createUser fixture * test(TC-3716): check current time is visible in details * fix(a11y): add disabled attribute to MessageTimerButton * test(TC-3718): check timed message button is disabled if timed messages are set globally * test(TC-3719): globally set timer is shown on button next to input field * test(TC-3720): system messages are shown for enabled / disabled timer messages * test(TC-3717): check ephemeral message appear in search results * test(TC-3731): add test for message to disappear from search results (currently broken) * refactor: group search tests * refactor: update search result tests to do assertions on receiver side * refactor: group tests with self deleting messages set globally for a group conversation * docs: add ticket number to comment for skipped test * fix: prevent microphone disabled dialog display when muted (#19808) * test(WPB-21957): update backend endpoint to match api version (#19809) * chore: bump avs to v10.2.19 (#19810) * chore(deps): bump pm2 from 6.0.13 to 6.0.14 in /server (#19814) Bumps [pm2](https://github.com/Unitech/pm2) from 6.0.13 to 6.0.14. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](Unitech/pm2@v6.0.13...v6.0.14) --- updated-dependencies: - dependency-name: pm2 dependency-version: 6.0.14 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump js-yaml from 3.14.1 to 3.14.2 in /server (#19817) Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2. - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](nodeca/js-yaml@3.14.1...3.14.2) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 3.14.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(WPB-19939): add authentication regression tests (#19826) * test(TC-34579: verify signin button is disabled inc ase of empty credentials * test(TC-3468): Verify sign in error appearance in case of suspended team account * test(TC-3460): Verify current browser is set as temporary device * test(TC-3465): Verify sign in error appearance in case of wrong credentials * test(TC-3472): Ensure history is kept after refresh on permanent device * test(TC-3473): create data driven test to also ensure history is kept on temporary device * test(TC-1311): verify session expires * test(TC-3480): check tls versions allowed by webapp server * test(TC-1311): Ensure history is gone after logging out of public computer * fix(websocket): optimise event handling. Add heartbeat [WPB-21950] (#19825) * fix(lifecycle): optimise online / offline event handling. Add heartbeat for WS * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * chore: rename to updateConnectivityStatus * chore: add copilot suggested improvements --------- Co-authored-by: Copilot <[email protected]> * chore(deps): bump express from 4.21.2 to 4.22.0 in /server (#19827) Bumps [express](https://github.com/expressjs/express) from 4.21.2 to 4.22.0. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/4.22.0/History.md) - [Commits](expressjs/express@4.21.2...4.22.0) --- updated-dependencies: - dependency-name: express dependency-version: 4.22.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: blocking user spec [19940] (#19784) * test(WPB-19940): add tests for blocking users * test(block): refactor block.spec.ts according to Review-Comments add function to userActions.ts to send a connection request add fixture for connection request delete conversationNotConnected.modal.ts, replace it with acknowledge.modal.ts * test(block): refactor block.spec.ts according to Review-Comments * test(block): refactor block.spec.ts according to Review-Comments * test(block): fixed unclear comments and variable namings --------- Co-authored-by: Klaus Boldt <[email protected]> * chore(deps): bump crowdin/github-action from 2.12.0 to 2.13.0 (#19828) Bumps [crowdin/github-action](https://github.com/crowdin/github-action) from 2.12.0 to 2.13.0. - [Release notes](https://github.com/crowdin/github-action/releases) - [Commits](crowdin/github-action@v2.12.0...v2.13.0) --- updated-dependencies: - dependency-name: crowdin/github-action dependency-version: 2.13.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat: integrate Collabora using iframe [WPB-21650] (#19813) * initial commit * add close modal handler * added isFileEditable() * added edit option for conversation assets * add tests * fixed getNode api call * bump @webapp/core * fix package.json * fixed package.json * fix package.json * address PR comments * fixed types * chore(deps-dev): bump stylelint from 16.26.0 to 16.26.1 (#19820) Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.26.0 to 16.26.1. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](stylelint/stylelint@16.26.0...16.26.1) --- updated-dependencies: - dependency-name: stylelint dependency-version: 16.26.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump @playwright/test from 1.56.1 to 1.57.0 (#19818) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.56.1 to 1.57.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](microsoft/playwright@v1.56.1...v1.57.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.57.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump baseline-browser-mapping from 2.8.31 to 2.8.32 (#19819) Bumps [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) from 2.8.31 to 2.8.32. - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.8.31...v2.8.32) --- updated-dependencies: - dependency-name: baseline-browser-mapping dependency-version: 2.8.32 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump emoji-picker-react from 4.15.2 to 4.16.1 (#19822) Bumps [emoji-picker-react](https://github.com/ealush/emoji-picker-react) from 4.15.2 to 4.16.1. - [Release notes](https://github.com/ealush/emoji-picker-react/releases) - [Commits](https://github.com/ealush/emoji-picker-react/commits) --- updated-dependencies: - dependency-name: emoji-picker-react dependency-version: 4.16.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * ci(WPB-21987): shard playwright tests across multiple runners (#19807) * refactor: use nvmrc to select node version * feat: add job to build test service * feat: shard tests across multiple runners with integrated testservice & job to collect reports * fix: build shadowJar of testservice * fix: generate json report when merging blobs * refactor: only download chrome browser for tests * ci: use github reporter in CI * fix: re-use playwright config when merging reports to generate json report for PR comment * refactor: don't pass github user and token when building testservice * feat: use 16 runners for sharding * feat: execute regression tests in addition to critical flow * fix: make script for reporting playwright summary work with nested test suites * chore: use SHA for third party actions (So Sonar shuts up) * refactor: use line reporter instead of github The report annotations are too annoying * refactor: stop background process of testservice after test * fix: run critical flow and regression tests * ci: increase number of parallel test runners to 32 Now that the regression tests and critical flow tests are executed 16 runners is a bit too little * style: ignore prettier for shard definition * chore: safe guard stripAnsi function in report generation * ci(WPB-21987): group test in playwright comment by file (#19830) * refactor: update report script to group tests by file * style: use list to render test cases * feat: add direct link to download playwright report * test(WPB-19966): fix getMessage locator to account for different message states (#19832) * chore: add env var MAX_API_VERSION [WPB-22159] (#19831) * runfix(cells): disable spammy tracking (#19829) * test(WPB-19968): use a unique test message to avoid strict mode violation (#19834) * test(WPB-19939): wait for login to finish before continuing (#19833) * chore: Update translations --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Zafar Saeed Khan <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Mark Brockhoff <[email protected]> Co-authored-by: Arjita <[email protected]> Co-authored-by: Adrian Weiß <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: JacquelineLehner <[email protected]> Co-authored-by: Klaus Boldt <[email protected]> Co-authored-by: Immad Abdul Jabbar <[email protected]>
…t tests with it (#19804) This is an attempt to resolve the race conditions happening when two users connect in a 1:1 for the first time starting the conversation as proteus but it's migrated to MLS automatically. This leads to a message sent during the migration being lost. Team members don't need to go through this step as they are aware of the spoken protocol of other members after login.
* fix: remove call from the call state when a user is left the group (#19790) * chore(deps-dev): bump rimraf from 6.1.0 to 6.1.2 in /server (#19791) Bumps [rimraf](https://github.com/isaacs/rimraf) from 6.1.0 to 6.1.2. - [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md) - [Commits](isaacs/rimraf@v6.1.0...v6.1.2) --- updated-dependencies: - dependency-name: rimraf dependency-version: 6.1.2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * refactor(WPB-21957): create fixture for creating teams + refactor edit tests with it (#19804) This is an attempt to resolve the race conditions happening when two users connect in a 1:1 for the first time starting the conversation as proteus but it's migrated to MLS automatically. This leads to a message sent during the migration being lost. Team members don't need to go through this step as they are aware of the spoken protocol of other members after login. * test(WPB-19966): write "Reply" regression tests (#19760) * test(TC-8038): add test for not replying to a ping * test(TC-8039): add test for not replying to timed messages * test(TC-2994): add test for quote in reply to vanish if source message is removed * test(TC-2996): add test for searching message * test(TC-2997): test for quote in reply to be truncated * test(TC-3002): reply to a picture * test(TC-3003): reply to an audio message * test(TC-3004): reply to video * test(TC-3005): reply to link * test(TC3006): reply to file * test(TC-3007): reply to reply * test(TC-3008): reply to link with text * test(TC-3011): Reply with timed message * test(TC-3013): test clicking the reply * test(TC-3014): test replying in a conversation I'm no longer part of * test(TC-3016): click on mention in reply opens user profile * fix: remove visibility check from sendMessage * test(TC-3009): add test case for replying to a location + util for sending location via testservice * refactor: replace createPagesForUser with new fixtures * refactor(test): use new fixtures for reply tests * refactor: remove no longer used PagePlugin withConversation * fix: accessibility improvements login(https://wearezeta.atlassian.net/browse/WPB-20819) (#19714) * fix: make password toggle button accessible and localised(WPB-21228) * fix: translate type * fix: Login - New view is not announced * fix: make back button accessible WPB-21466 * fix: make external link 2fa accessible(WPB-21279) * fix: password toggle button text alternative(WPB-21228) * fix: make verify account header focusable using screenkey and login subheading style adjustments * fix: add toggle password show/hide label * fix: address review comments * chore: bump core packages * fix: pipeline issues * fix: PR comments * fix: pipeline issues * chore(deps): bump @wireapp/core from 46.46.3 to 46.46.5 (#19793) Bumps [@wireapp/core](https://github.com/wireapp/wire-web-packages) from 46.46.3 to 46.46.5. - [Commits](https://github.com/wireapp/wire-web-packages/compare/@wireapp/[email protected]...@wireapp/[email protected]) --- updated-dependencies: - dependency-name: "@wireapp/core" dependency-version: 46.46.5 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump core-js from 3.46.0 to 3.47.0 (#19797) Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.46.0 to 3.47.0. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.47.0/packages/core-js) --- updated-dependencies: - dependency-name: core-js dependency-version: 3.47.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump emoji-picker-react from 4.15.1 to 4.15.2 (#19802) Bumps [emoji-picker-react](https://github.com/ealush/emoji-picker-react) from 4.15.1 to 4.15.2. - [Release notes](https://github.com/ealush/emoji-picker-react/releases) - [Commits](https://github.com/ealush/emoji-picker-react/commits) --- updated-dependencies: - dependency-name: emoji-picker-react dependency-version: 4.15.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump html-webpack-plugin from 5.6.4 to 5.6.5 (#19800) Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 5.6.4 to 5.6.5. - [Release notes](https://github.com/jantimon/html-webpack-plugin/releases) - [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/main/CHANGELOG.md) - [Commits](jantimon/html-webpack-plugin@v5.6.4...v5.6.5) --- updated-dependencies: - dependency-name: html-webpack-plugin dependency-version: 5.6.5 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump oidc-client-ts from 3.4.0 to 3.4.1 (#19801) Bumps [oidc-client-ts](https://github.com/authts/oidc-client-ts) from 3.4.0 to 3.4.1. - [Release notes](https://github.com/authts/oidc-client-ts/releases) - [Commits](authts/oidc-client-ts@v3.4.0...v3.4.1) --- updated-dependencies: - dependency-name: oidc-client-ts dependency-version: 3.4.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump webpack from 5.102.1 to 5.103.0 (#19796) Bumps [webpack](https://github.com/webpack/webpack) from 5.102.1 to 5.103.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](webpack/webpack@v5.102.1...v5.103.0) --- updated-dependencies: - dependency-name: webpack dependency-version: 5.103.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump workbox-webpack-plugin from 7.3.0 to 7.4.0 (#19799) Bumps [workbox-webpack-plugin](https://github.com/googlechrome/workbox) from 7.3.0 to 7.4.0. - [Release notes](https://github.com/googlechrome/workbox/releases) - [Commits](GoogleChrome/workbox@v7.3.0...v7.4.0) --- updated-dependencies: - dependency-name: workbox-webpack-plugin dependency-version: 7.4.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump stylelint from 16.25.0 to 16.26.0 (#19798) Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.25.0 to 16.26.0. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](stylelint/stylelint@16.25.0...16.26.0) --- updated-dependencies: - dependency-name: stylelint dependency-version: 16.26.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump baseline-browser-mapping from 2.8.28 to 2.8.31 (#19792) Bumps [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) from 2.8.28 to 2.8.31. - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.8.28...v2.8.31) --- updated-dependencies: - dependency-name: baseline-browser-mapping dependency-version: 2.8.31 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(WPB-19968): add tests for self deleting messages (#19805) * test(TC-657): add test for sending ephemeral text message in 1:1 * test(TC-658): add test for sending ephemeral text message in group * refactor: replace util sendTimedMessage with dedicated utils for enabling and disabling timed messages * test(TC-662): Verify timer is applied to all messages until turning it off in 1:1 * test(TC-664): Verify that message with previous timer are deleted on start-up when the timeout passed in 1:1 * refactor: overload createPage fixture to optionally accept a context to reuse * refactor: use team for tests using new fixture * test(TC-675): Verify the message is not deleted for users that didn't read the message * test(TC-3715): set global group conversation timer * refactor(reply-tests): remove unused createUser fixture * test(TC-3716): check current time is visible in details * fix(a11y): add disabled attribute to MessageTimerButton * test(TC-3718): check timed message button is disabled if timed messages are set globally * test(TC-3719): globally set timer is shown on button next to input field * test(TC-3720): system messages are shown for enabled / disabled timer messages * test(TC-3717): check ephemeral message appear in search results * test(TC-3731): add test for message to disappear from search results (currently broken) * refactor: group search tests * refactor: update search result tests to do assertions on receiver side * refactor: group tests with self deleting messages set globally for a group conversation * docs: add ticket number to comment for skipped test * fix: prevent microphone disabled dialog display when muted (#19808) * test(WPB-21957): update backend endpoint to match api version (#19809) * chore: bump avs to v10.2.19 (#19810) * chore(deps): bump pm2 from 6.0.13 to 6.0.14 in /server (#19814) Bumps [pm2](https://github.com/Unitech/pm2) from 6.0.13 to 6.0.14. - [Release notes](https://github.com/Unitech/pm2/releases) - [Changelog](https://github.com/Unitech/pm2/blob/master/CHANGELOG.md) - [Commits](Unitech/pm2@v6.0.13...v6.0.14) --- updated-dependencies: - dependency-name: pm2 dependency-version: 6.0.14 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump js-yaml from 3.14.1 to 3.14.2 in /server (#19817) Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2. - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](nodeca/js-yaml@3.14.1...3.14.2) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 3.14.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(WPB-19939): add authentication regression tests (#19826) * test(TC-34579: verify signin button is disabled inc ase of empty credentials * test(TC-3468): Verify sign in error appearance in case of suspended team account * test(TC-3460): Verify current browser is set as temporary device * test(TC-3465): Verify sign in error appearance in case of wrong credentials * test(TC-3472): Ensure history is kept after refresh on permanent device * test(TC-3473): create data driven test to also ensure history is kept on temporary device * test(TC-1311): verify session expires * test(TC-3480): check tls versions allowed by webapp server * test(TC-1311): Ensure history is gone after logging out of public computer * fix(websocket): optimise event handling. Add heartbeat [WPB-21950] (#19825) * fix(lifecycle): optimise online / offline event handling. Add heartbeat for WS * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * Update src/script/repositories/event/EventRepository.ts Co-authored-by: Copilot <[email protected]> * chore: rename to updateConnectivityStatus * chore: add copilot suggested improvements --------- Co-authored-by: Copilot <[email protected]> * chore(deps): bump express from 4.21.2 to 4.22.0 in /server (#19827) Bumps [express](https://github.com/expressjs/express) from 4.21.2 to 4.22.0. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/4.22.0/History.md) - [Commits](expressjs/express@4.21.2...4.22.0) --- updated-dependencies: - dependency-name: express dependency-version: 4.22.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: blocking user spec [19940] (#19784) * test(WPB-19940): add tests for blocking users * test(block): refactor block.spec.ts according to Review-Comments add function to userActions.ts to send a connection request add fixture for connection request delete conversationNotConnected.modal.ts, replace it with acknowledge.modal.ts * test(block): refactor block.spec.ts according to Review-Comments * test(block): refactor block.spec.ts according to Review-Comments * test(block): fixed unclear comments and variable namings --------- Co-authored-by: Klaus Boldt <[email protected]> * chore(deps): bump crowdin/github-action from 2.12.0 to 2.13.0 (#19828) Bumps [crowdin/github-action](https://github.com/crowdin/github-action) from 2.12.0 to 2.13.0. - [Release notes](https://github.com/crowdin/github-action/releases) - [Commits](crowdin/github-action@v2.12.0...v2.13.0) --- updated-dependencies: - dependency-name: crowdin/github-action dependency-version: 2.13.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat: integrate Collabora using iframe [WPB-21650] (#19813) * initial commit * add close modal handler * added isFileEditable() * added edit option for conversation assets * add tests * fixed getNode api call * bump @webapp/core * fix package.json * fixed package.json * fix package.json * address PR comments * fixed types * chore(deps-dev): bump stylelint from 16.26.0 to 16.26.1 (#19820) Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.26.0 to 16.26.1. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](stylelint/stylelint@16.26.0...16.26.1) --- updated-dependencies: - dependency-name: stylelint dependency-version: 16.26.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump @playwright/test from 1.56.1 to 1.57.0 (#19818) Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.56.1 to 1.57.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](microsoft/playwright@v1.56.1...v1.57.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.57.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump baseline-browser-mapping from 2.8.31 to 2.8.32 (#19819) Bumps [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) from 2.8.31 to 2.8.32. - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.8.31...v2.8.32) --- updated-dependencies: - dependency-name: baseline-browser-mapping dependency-version: 2.8.32 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump emoji-picker-react from 4.15.2 to 4.16.1 (#19822) Bumps [emoji-picker-react](https://github.com/ealush/emoji-picker-react) from 4.15.2 to 4.16.1. - [Release notes](https://github.com/ealush/emoji-picker-react/releases) - [Commits](https://github.com/ealush/emoji-picker-react/commits) --- updated-dependencies: - dependency-name: emoji-picker-react dependency-version: 4.16.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * ci(WPB-21987): shard playwright tests across multiple runners (#19807) * refactor: use nvmrc to select node version * feat: add job to build test service * feat: shard tests across multiple runners with integrated testservice & job to collect reports * fix: build shadowJar of testservice * fix: generate json report when merging blobs * refactor: only download chrome browser for tests * ci: use github reporter in CI * fix: re-use playwright config when merging reports to generate json report for PR comment * refactor: don't pass github user and token when building testservice * feat: use 16 runners for sharding * feat: execute regression tests in addition to critical flow * fix: make script for reporting playwright summary work with nested test suites * chore: use SHA for third party actions (So Sonar shuts up) * refactor: use line reporter instead of github The report annotations are too annoying * refactor: stop background process of testservice after test * fix: run critical flow and regression tests * ci: increase number of parallel test runners to 32 Now that the regression tests and critical flow tests are executed 16 runners is a bit too little * style: ignore prettier for shard definition * chore: safe guard stripAnsi function in report generation * ci(WPB-21987): group test in playwright comment by file (#19830) * refactor: update report script to group tests by file * style: use list to render test cases * feat: add direct link to download playwright report * test(WPB-19966): fix getMessage locator to account for different message states (#19832) * chore: add env var MAX_API_VERSION [WPB-22159] (#19831) * runfix(cells): disable spammy tracking (#19829) * test(WPB-19968): use a unique test message to avoid strict mode violation (#19834) * test(WPB-19939): wait for login to finish before continuing (#19833) * chore: Update translations --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Zafar Saeed Khan <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Mark Brockhoff <[email protected]> Co-authored-by: Arjita <[email protected]> Co-authored-by: Adrian Weiß <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: JacquelineLehner <[email protected]> Co-authored-by: Klaus Boldt <[email protected]> Co-authored-by: Immad Abdul Jabbar <[email protected]>

Pull Request
Summary
This PR adds a new fixture to create a team owner with a team and the option to add members to it. This was mainly done to avoid the race condition which can occur when connecting users via the api. Using a team eliminates the need to send a connection request first.
Security Checklist (required)
Standards Acknowledgement (required)
Notes for reviewers