Skip to content

Conversation

@markbrockhoff
Copy link
Collaborator

@markbrockhoff markbrockhoff commented Dec 5, 2025

TaskWPB-19943 [Web/QA] Write the calling regression tests in Playwright

Pull Request

Summary

The PageManager had an async getter just to access a constructor parameter. This was unnecessary and wrong.


Security Checklist (required)

  • External inputs are validated & sanitized on client and/or server where applicable.
  • API responses are validated; unexpected shapes are handled safely (fallbacks or errors).
  • No unsafe HTML is rendered; if unavoidable, sanitization is applied and documented where it happens.
  • Injection risks (XSS/SQL/command) are prevented via safe APIs and/or escaping.

Standards Acknowledgement (required)


Notes for reviewers

@markbrockhoff markbrockhoff requested review from a team and otto-the-bot as code owners December 5, 2025 14:09
@markbrockhoff markbrockhoff changed the title test: remove async getPage from PageManager refactor: remove async getPage from PageManager Dec 5, 2025
@codecov
Copy link

codecov bot commented Dec 5, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 43.74%. Comparing base (e447cd4) to head (adbbe30).
⚠️ Report is 1 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev   #19848      +/-   ##
==========================================
- Coverage   43.78%   43.74%   -0.04%     
==========================================
  Files        1300     1300              
  Lines       32766    32766              
  Branches     7273     7273              
==========================================
- Hits        14345    14332      -13     
- Misses      16700    16711      +11     
- Partials     1721     1723       +2     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 5, 2025

🔗 Download Full Report Artifact

🧪 Playwright Test Summary

  • Passed: 3
  • Failed: 88
  • Skipped: 18
  • 🔁 Flaky: 0
  • 📊 Total: 109
  • Total Runtime: 163.8s (~ 2 min 44 sec)
specs/2FA-for-TeamsSpecs/2fa-for-teams.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ f2a for teams > 2FA Code (tags: TC-8749, regression)
specs/Accessibility/Accessibility.spec.ts (❌ 2 failed, ⚠️ 0 flaky)
  • ❌ Accessibility > I want to see typing indicator in group conversation (tags: TC-46, regression)
  • ❌ Accessibility > I want to see collapsed view when app is narrow (tags: TC-48, regression)
specs/AccountSettingsSpecs/accountSettings.spec.ts (❌ 3 failed, ⚠️ 0 flaky)
  • ❌ account settings > Edit Profile (tags: TC-8770, regression)
  • ❌ account settings > I should not be able to change my email to an invalid email address (tags: TC-59, regression)
  • ❌ account settings > Verify link to manage a team is not shown when logged in as team member or normal use (tags: TC-1723, regression)
specs/AppLock/AppLock.spec.ts (❌ 2 failed, ⚠️ 0 flaky)
  • ❌ AppLock > I want to see app lock setup modal on login after app lock has been enforced for the team (tags: TC-2744, TC-2740, regression)
  • ❌ AppLock > Web: App should not lock if I switch back to webapp tab in time (during inactivity timeout) (tags: TC-2752, TC-2753, regression)
specs/ArchiveSpecs/archive.spec.ts (❌ 2 failed, ⚠️ 0 flaky)
  • ❌ Accessibility > I want to archive and unarchive conversation via conversation list (tags: TC-97, regression)
  • ❌ Accessibility > I want to archive the 1on1 conversation from conversation details (tags: TC-105, regression)
specs/Authentication/authentication.spec.ts (❌ 6 failed, ⚠️ 0 flaky)
  • ❌ Authentication > I want to be asked to share telemetry data when I log in (tags: TC-8780, regression)
  • ❌ Authentication > Verify current browser is set as temporary device (tags: TC-3460, regression)
  • ❌ Authentication > I want to keep my history after refreshing the page on permanent device (tags: TC-3472, regression)
  • ❌ Authentication > I want to keep my history after refreshing the page on temporary device (tags: TC-3473, regression)
  • ❌ Authentication > Make sure user does not see data of user of previous sessions on same browser (tags: TC-1311, regression)
  • ❌ Authentication > Verify session expired info is visible on login page (tags: TC-1311, regression)
specs/Block/block.spec.ts (❌ 7 failed, ⚠️ 0 flaky)
  • ❌ Block: User A and User B are NOT in the same team > I want to cancel blocking a 1:1 conversation from conversation list (tags: TC-137, regression)
  • ❌ Block: User A and User B are NOT in the same team > Verify you can block a user who is not in your team (tags: TC-140, regression)
  • ❌ Block: User A and User B are NOT in the same team > Verify you still receive messages from blocked person in a group chat (tags: TC-141, regression)
  • ❌ Block: User A and User B are NOT in the same team > Verify you can unblock user from 1:1 conversation details (tags: TC-142, regression)
  • ❌ Block: User A and User B are NOT in the same team > Verify you cannot add a person who blocked you to a group chat (tags: TC-143, regression)
  • ❌ Block: User A and User B are NOT in the same team > Verify you can unblock someone from conversation list options (tags: TC-148, regression)
  • ❌ Block: User A and User B are in the same team > Verify you can not block a user from your team (tags: TC-8778, regression)
specs/Connections/Connections.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Connections > Verify 1on1 conversation is not created on the second end after you ignore connection request (tags: TC-365, TC-369, TC-370, TC-371, regression)
specs/CriticalFlow/accountManagement-TC-8639.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Account Management (tags: TC-8639, crit-flow-web)
specs/CriticalFlow/addMembersToChat-TC-8631.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Team owner adds whole team to an all team chat (tags: TC-8631, crit-flow-web)
specs/CriticalFlow/backupRestoration-TC-8634.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Setting up new device with a backup (tags: TC-8634, crit-flow-web)
specs/CriticalFlow/Cells/uploadingFileInGroupConversation.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Uploading an file in a group conversation (tags: crit-flow-cells, regression)
specs/CriticalFlow/channelsCall-TC-8755.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Calls in channels with device switch and screenshare (tags: TC-8754, crit-flow-web)
specs/CriticalFlow/channelsManagement-TC-8752.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Channels Management (tags: TC-8752, crit-flow-web)
specs/CriticalFlow/conversationManagement-TC-8636.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Conversation Management (tags: TC-8636, crit-flow-web)
specs/CriticalFlow/groupCalls-TC-8632.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Planning group call with sending various messages during call (tags: TC-8632, crit-flow-web)
specs/CriticalFlow/groupVideoCall-TC-8637.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Group Video call (tags: TC-8637, crit-flow-web)
specs/CriticalFlow/joinTeam-TC-8635.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ New person joins team and setups up device (tags: TC-8635, crit-flow-web)
specs/CriticalFlow/messagesIn1On1-TC-8750.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Messages in 1:1 (tags: TC-8750, crit-flow-web)
specs/CriticalFlow/messagesInChannels-TC-8753.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Messages in Channels (tags: TC-8753, crit-flow-web)
specs/CriticalFlow/messagesInGroups-TC-8751.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Messages in Groups (tags: TC-8751, crit-flow-web)
specs/CriticalFlow/oneOnOneCall-TC-8754.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ 1:1 Video call with device switch and screenshare (tags: TC-8754, crit-flow-web)
specs/CriticalFlow/personalAccountLifecycle-TC-8638.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Personal Account Lifecycle (tags: TC-8638, crit-flow-web)
specs/Edit/edit.spec.ts (❌ 8 failed, ⚠️ 0 flaky)
  • ❌ Edit > I can edit my message in 1:1 (tags: TC-679, regression)
  • ❌ Edit > I can edit my message in a group conversation (tags: TC-680, regression)
  • ❌ Edit > I see changed message if message was edited from another device (tags: TC-682, regression)
  • ❌ Edit > I cannot edit another users message (tags: TC-683, regression)
  • ❌ Edit > I can edit my last message by pressing the up arrow key (tags: TC-686, regression)
  • ❌ Edit > Editing a message does not create unread dot on receiver side (tags: TC-690, regression)
  • ❌ Edit > I can see the changed message was edited from another user (tags: TC-692, regression)
  • ❌ Edit > I want to see the last edited text including a timestamp in message detail view if the message has been edited (tags: TC-3563, regression)
specs/LoginSpecs/login.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Verify you can sign in by email (tags: TC-3461, regression)
specs/RegisterSpecs/register.spec.ts (❌ 9 failed, ⚠️ 0 flaky)
  • ❌ registration personal account > I want to see an error message if the email address is blacklisted (tags: TC-1624, regression)
  • ❌ registration personal account > I want to see an error message if email is not valid (tags: TC-1627, regression)
  • ❌ registration personal account > I should not be able to submit a password less than 8 chars (tags: TC-1634, regression)
  • ❌ registration personal account > I should not be able to submit a password which does not have any Capital letter (tags: TC-1635, regression)
  • ❌ registration personal account > I should not be able to submit a password which does not have any number (tags: TC-1636, regression)
  • ❌ registration personal account > I should not be able to submit a password which does not have any special letter (tags: TC-1637, TC-1641, regression)
  • ❌ registration personal account > I want to submit a password containing emojis (tags: TC-1642, regression)
  • ❌ registration personal account > I want to submit a password containing spaces (tags: TC-1643, regression)
  • ❌ email registration used > I want to be notified if the email address I entered during registration has already been registered (tags: TC-1623, TC-1640, regression)
specs/RegressionSpecs/archive.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Archive status of conversation should only change by user explicitly changing it (tags: TC-97, TC-99, TC-104, TC-105, regression)
specs/RegressionSpecs/block-messages.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Block specs (tags: TC-141, regression)
specs/RegressionSpecs/block-search.spec.ts (❌ 1 failed, ⚠️ 0 flaky)
  • ❌ Block from search specs (tags: TC-144, regression)
specs/Reply/reply.spec.ts (❌ 17 failed, ⚠️ 0 flaky)
  • ❌ Reply > I should not be able to reply to a ping (tags: TC-8038, regression)
  • ❌ Reply > I should not be able to reply to timed messages (tags: TC-8039, regression)
  • ❌ Reply > I want to see a placeholder text as quote when original message is not available anymore (tags: TC-2994, regression)
  • ❌ Reply > I should not see the quoted message when searching for original message in collections (tags: TC-2996, regression)
  • ❌ Reply > I want to see truncated quote preview if quote is too long (tags: TC-2997, regression)
  • ❌ Reply > I want to reply to a picture (tags: TC-3002, regression)
  • ❌ Reply > I want to reply to an audio message (tags: TC-3003, regression)
  • ❌ Reply > I want to reply to a video message (tags: TC-3004, regression)
  • ❌ Reply > I want to reply to a link (tags: TC-3005, regression)
  • ❌ Reply > I want to reply to a file (tags: TC-3006, regression)
  • ❌ Reply > I want to reply to a reply (tags: TC-3007, regression)
  • ❌ Reply > I want to reply to a link mixed with text (tags: TC-3008, regression)
  • ❌ Reply > I want to reply to a location share (tags: TC-3009, regression)
  • ❌ Reply > I want to send a timed message as a reply to any type of a message (tags: TC-3011, regression)
  • ❌ Reply > I want to click the quoted message to jump to the original message (tags: TC-3013, regression)
  • ❌ Reply > I should not be able to send a reply after I got removed from the conversation (tags: TC-3014, regression)
  • ❌ Reply > I want to reply with mention and tap on the mention in the reply opens the user profile (tags: TC-3016, regression)
specs/SelfDeletingMessages/selfDeletingMessages.spec.ts (❌ 11 failed, ⚠️ 0 flaky)
  • ❌ Self Deleting Messages > Verify sending ephemeral text message in 1:1 (tags: TC-657, regression)
  • ❌ Self Deleting Messages > Verify sending ephemeral text message in group (tags: TC-658, regression)
  • ❌ Self Deleting Messages > Verify timer is applied to all messages until turning it off in 1:1 (tags: TC-662, regression)
  • ❌ Self Deleting Messages > Verify that message with previous timer are deleted on start-up when the timeout passed in 1:1 (tags: TC-664, regression)
  • ❌ Self Deleting Messages > Verify the message is not deleted for users that didn't read the message (tags: TC-675, regression)
  • ❌ set globally in group conversation > I want to set a global group conversation timer (tags: TC-3715, regression)
  • ❌ set globally in group conversation > I want to see the current timer in conversation details (tags: TC-3716, regression)
  • ❌ set globally in group conversation > I want to see timed message disable in an input bar when global settings conversation options are set (tags: TC-3718, regression)
  • ❌ set globally in group conversation > I want to see the ephemeral indicator is updated in the input field if someone sets a global timer in conversation options (tags: TC-3719, regression)
  • ❌ set globally in group conversation > I want to see a system message that a global timer was set or changed or removed in conversation options (tags: TC-3720, regression)
  • ❌ in search results > I want to see ephemeral messages in the search results (tags: TC-3717, regression)

@markbrockhoff markbrockhoff force-pushed the test/remove-getPage-from-PageManager branch from aea2f83 to d91d7d3 Compare December 8, 2025 12:41
@markbrockhoff markbrockhoff force-pushed the test/remove-getPage-from-PageManager branch 2 times, most recently from 760b70d to 232d7ec Compare December 9, 2025 07:46
@markbrockhoff markbrockhoff enabled auto-merge (squash) December 9, 2025 08:44
@markbrockhoff markbrockhoff force-pushed the test/remove-getPage-from-PageManager branch from be7ad18 to adbbe30 Compare December 9, 2025 13:26
@sonarqubecloud
Copy link

sonarqubecloud bot commented Dec 9, 2025

Quality Gate Failed Quality Gate failed

Failed conditions
8.3% Duplication on New Code (required ≤ 5%)

See analysis details on SonarQube Cloud

@markbrockhoff markbrockhoff changed the title refactor: remove async getPage from PageManager refactor(WPB-19943): remove async getPage from PageManager Dec 9, 2025
@markbrockhoff markbrockhoff merged commit ec344bc into dev Dec 9, 2025
17 of 51 checks passed
@markbrockhoff markbrockhoff deleted the test/remove-getPage-from-PageManager branch December 9, 2025 13:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants