Skip to content
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: Simplify handleNetworkSwitch helper #6878

Merged
merged 1 commit into from
Jul 27, 2023

Conversation

Gudahtt
Copy link
Member

@Gudahtt Gudahtt commented Jul 24, 2023

Development & PR Process

  1. Follow MetaMask Mobile Coding Standards
  2. Add release-xx label to identify the PR slated for a upcoming release (will be used in release discussion)
  3. Add needs-dev-review label when work is completed
  4. Add needs-qa label when dev review is completed
  5. Add QA Passed label when QA has signed off

Description
The handleNetworkSwitch helper function no longer requires the frequentRpcList state as a parameter. Instead it takes a reference to the PreferencesController, and gets the RPC list state from that.

Typically it would be preferrable to reference controller state from Redux rather than accesing it directly from the Engine global. However, this function will be called from non-UI contexts, so it has to get controller state from global context regardless.

Issue

This change was done to simplify PR #6872, which is part of https://github.com/MetaMask/mobile-planning/issues/798

Checklist

  • There is a related GitHub issue
  • Tests are included if applicable
  • Any added code is fully documented

@Gudahtt Gudahtt marked this pull request as ready for review July 24, 2023 21:52
@Gudahtt Gudahtt requested a review from a team as a code owner July 24, 2023 21:52
@Gudahtt Gudahtt added needs-dev-review PR needs reviews from other engineers (in order to receive required approvals) No QA Needed/E2E Only Apply this label when your PR does not need any QA effort. labels Jul 24, 2023
@Gudahtt
Copy link
Member Author

Gudahtt commented Jul 24, 2023

@Gudahtt Gudahtt force-pushed the refactor-handle-network-switch branch 4 times, most recently from a09da1b to 8d209fe Compare July 25, 2023 16:32
@Gudahtt Gudahtt force-pushed the refactor-handle-network-switch branch 7 times, most recently from d4e7ae2 to 7b80a15 Compare July 26, 2023 21:42
The `handleNetworkSwitch` helper function no longer requires the
`frequentRpcList` state as a parameter. Instead it takes a reference to
the `PreferencesController`, and gets the RPC list state from that.

Typically it would be preferrable to reference controller state from
Redux rather than accesing it directly from the Engine global. However,
this function will be called from non-UI contexts, so it has to get
controller state from global context regardless.

This change was done to simplify PR #6872, which is part of
MetaMask/mobile-planning#798
@Gudahtt Gudahtt force-pushed the refactor-handle-network-switch branch from 7b80a15 to 21f6bd4 Compare July 27, 2023 11:52
@sonarcloud
Copy link

sonarcloud bot commented Jul 27, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

22.2% 22.2% Coverage
0.0% 0.0% Duplication

Copy link
Contributor

@Cal-L Cal-L left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Gudahtt Gudahtt merged commit 95881df into main Jul 27, 2023
11 checks passed
@Gudahtt Gudahtt deleted the refactor-handle-network-switch branch July 27, 2023 15:58
@github-actions github-actions bot removed the needs-dev-review PR needs reviews from other engineers (in order to receive required approvals) label Jul 27, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Jul 27, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
No QA Needed/E2E Only Apply this label when your PR does not need any QA effort. release-7.5.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants