-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Wsun/test workflow approval #22669
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
base: main
Are you sure you want to change the base?
Wsun/test workflow approval #22669
Conversation
…ates-feature-flag
…etamask-mobile into wsun/eas-updates-feature-flag
…etamask-mobile into wsun/eas-updates-feature-flag
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
| }; | ||
|
|
||
| checkForUpdates(); | ||
| }, [otaUpdatesEnabled]); |
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.
Bug: UI State Mismatch During Update Check
When otaUpdatesEnabled changes from false to true, the update check runs but isCheckingUpdates remains false from the previous effect run. This prevents the loading UI from displaying during the actual update check, creating an inconsistent state where updates are being checked but the user sees no loading indicator.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsAfter thorough investigation, these changes introduce a new OTA (Over-The-Air) updates feature that is:
The comprehensive unit test coverage (300+ lines for the hook, 106 lines for the selector, extensive App.tsx tests) provides confidence that the feature works as intended when enabled. |
| await waitFor(() => { | ||
| expect(mockCheckForUpdateAsync).toHaveBeenCalledTimes(1); | ||
| }); | ||
| }); |
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.
Bug: Enforce AAA Pattern Blank Line Separation (Bugbot Rules)
Test violates mandatory AAA pattern by missing blank line between Act and Assert sections. Line 96 contains the Act step (renderHook), and line 97 immediately starts the Assert step (await waitFor) without a separating blank line. The unit testing guidelines require blank line separation between Arrange, Act, and Assert sections in every test.
|



Description
Changelog
CHANGELOG entry:
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Adds an OTA update check at app startup (feature-flagged) and displays a loading screen while checking, with supporting selector and tests.
AppintoAppContentand wrapperAppthat usesuseOTAUpdatesto gate rendering; showsFoxLoaderwhileisCheckingUpdatesis true (app/components/Nav/App/App.tsx).useOTAUpdateshook usingexpo-updatesto check/fetch/reload OTA updates based onselectOTAUpdatesEnabled(app/components/hooks/useOTAUpdates.ts).selectOTAUpdatesEnabledwith version-gated validation (app/selectors/featureFlagController/otaUpdatesEnabled).otaUpdatesEnabledinapp/util/feature-flags/index.ts.useOTAUpdatesbehaviors (app/components/hooks/useOTAUpdates.test.ts).App.test.tsxto mockuseOTAUpdatesand assertFoxLoaderrenders during update check.Written by Cursor Bugbot for commit ab9b24b. This will update automatically on new commits. Configure here.