Skip to content

test: stabilize Okta SSO backup flow [WPB-25072]#4766

Merged
emmaoke-w merged 8 commits intodevelopfrom
fix/wpb-25072-okta-sso-backup
May 4, 2026
Merged

test: stabilize Okta SSO backup flow [WPB-25072]#4766
emmaoke-w merged 8 commits intodevelopfrom
fix/wpb-25072-okta-sso-backup

Conversation

@emmaoke-w
Copy link
Copy Markdown
Contributor

@emmaoke-w emmaoke-w commented Apr 28, 2026

https://wearezeta.atlassian.net/browse/WPB-25072


PR Submission Checklist for internal contributors

  • The PR Title

    • conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
    • contains a reference JIRA issue number like SQPIT-764
    • answers the question: If merged, this PR will: ... ³
  • The PR Description

    • is free of optional paragraphs and you have filled the relevant parts to the best of your ability

What's new in this PR?

  • Fix the Okta SSO backup setup flow by using the same shared OktaApiClient throughout app creation, user creation, and assignment.

  • Update OktaApiClient.createUser(...) to return the created Okta user id so the test flow can use it immediately.

  • Add direct Okta app assignment with assignUserToApplication(userId) instead of relying on indirect propagation.

  • Remove the old indirect Okta propagation wait by deleting waitForAppGroupLink(...) and the extra warm-up sleep.

  • Tighten Okta retry handling so we only retry retryable failures, especially transient 429 responses, and respect Retry-After.

  • Make Okta cleanup in SSODeviceBackup best-effort with runCatching { oktaApiClient.cleanUp() } so teardown is less hard.

  • Pre-grant Android 13+ notification permission during test setup through PermissionUtils, while keeping the notification dialog tap as a fallback if the dialog still appears.

  • Keep the backup settings navigation more resilient by retrying the menu click until the backup page is detected.

Issues

Briefly describe the issue you have solved or implemented with this pull request. If the PR contains multiple issues, use a bullet list.

  • Stabilized the Android SSO backup test flow by fixing the Okta setup path: created Okta users are now assigned directly to the Okta app, and the old propagation wait/sleep logic was removed.

  • Improved test reliability around first-time setup by pre-granting Android notification permission during setup, keeping the UI permission tap as a fallback, and making the backup settings navigation and Okta cleanup less hard.

Causes (Optional)

Briefly describe the causes behind the issues. This could be helpful to understand the adopted solutions behind some nasty bugs or complex issues.

Solutions

Briefly describe the solutions you have implemented for the issues explained above.

Dependencies (Optional)

If there are some other pull requests related to this one (e.g. new releases of frameworks), specify them here.

Needs releases with:

  • GitHub link to other pull request

Testing

Test Coverage (Optional)

  • I have added automated test to this contribution

How to Test

Briefly describe how this change was tested and if applicable the exact steps taken to verify that it works as expected.

Notes (Optional)

Specify here any other facts that you think are important for this issue.

Attachments (Optional)

Attachments like images, videos, etc. (drag and drop in the text box)


PR Post Submission Checklist for internal contributors (Optional)

  • Wire's Github Workflow has automatically linked the PR to a JIRA issue

PR Post Merge Checklist for internal contributors

  • If any soft of configuration variable was introduced by this PR, it has been added to the relevant documents and the CI jobs have been updated.

References
  1. https://sparkbox.com/foundry/semantic_commit_messages
  2. https://github.com/wireapp/.github#usage
  3. E.g. feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.

@emmaoke-w emmaoke-w marked this pull request as ready for review April 28, 2026 09:45
@MohamadJaara MohamadJaara changed the title fix: stabilize Okta SSO backup flow[WPB-25072] test: stabilize Okta SSO backup flow [WPB-25072] Apr 28, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 29, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.00%. Comparing base (27fd364) to head (6b2c594).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #4766   +/-   ##
========================================
  Coverage    51.00%   51.00%           
========================================
  Files          605      605           
  Lines        20996    20996           
  Branches      3388     3388           
========================================
  Hits         10709    10709           
  Misses        9281     9281           
  Partials      1006     1006           

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 27fd364...6b2c594. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

…core/pages/SettingsPage.kt

Co-authored-by: Yamil Medina <yamilmedina@users.noreply.github.com>
@emmaoke-w emmaoke-w requested a review from yamilmedina April 29, 2026 18:06
@emmaoke-w emmaoke-w enabled auto-merge May 4, 2026 08:09
@emmaoke-w emmaoke-w disabled auto-merge May 4, 2026 08:43
@emmaoke-w emmaoke-w enabled auto-merge May 4, 2026 09:31
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 4, 2026

@emmaoke-w emmaoke-w added this pull request to the merge queue May 4, 2026
Merged via the queue into develop with commit 29a820b May 4, 2026
15 checks passed
@emmaoke-w emmaoke-w deleted the fix/wpb-25072-okta-sso-backup branch May 4, 2026 10:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants