[LWDM] detox evm staking#17564
Conversation
Web Tools Build Status
|
Rsdoctor Bundle Diff AnalysisFound 7 projects in monorepo, 7 projects with changes. 📊 Quick Summary
📋 Detailed Reports (Click to expand)📁 desktop-mainPath:
📁 desktop-preloaderPath:
📁 desktop-rendererPath:
📁 desktop-webviewDappPreloaderPath:
📁 desktop-webviewPreloaderPath:
📁 desktop-workersPath:
📁 mobilePath:
Generated by Rsdoctor GitHub Action |
7612d25 to
48d5d26
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds Detox E2E coverage for EVM native staking on Sei and introduces the necessary app/test hooks to make the flow testable under mock/userdata conditions.
Changes:
- Persist EVM staking resources in the live-common EVM mock bridge by wiring
assignFromAccountRaw/assignToAccountRaw. - Update the EVM validator selection UI to support Detox (stable validator row testIDs and an E2E validator source from
account.stakingResources.validatorswhen running under Detox). - Add Sei EVM staking Detox specs, page object, and a dedicated
seiEvmStakinguserdata fixture.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| libs/ledger-live-common/src/families/evm/bridge/mock.ts | Exposes EVM staking raw-assign hooks in the mock bridge so staking resources survive serialization. |
| apps/ledger-live-mobile/src/families/evm/DelegationFlow/ValidatorRow.tsx | Adds a deterministic Detox-friendly testID for validator rows. |
| apps/ledger-live-mobile/src/families/evm/DelegationFlow/01-SelectValidator.tsx | Uses the EVM ValidatorRow + adds Detox-only validator sourcing from account staking resources. |
| apps/ledger-live-mobile/e2e/userdata/seiEvmStaking.json | New mocked portfolio fixture with Sei EVM staking state + validator list. |
| apps/ledger-live-mobile/e2e/specs/delegate/sei.spec.ts | New Detox test suite covering the happy delegation path + delegation summary visibility. |
| apps/ledger-live-mobile/e2e/page/trade/evmDelegate.page.ts | New page object for the EVM delegation flow interactions/assertions. |
| apps/ledger-live-mobile/e2e/page/index.ts | Registers the new evmDelegate page object on the global app helper. |
| .changeset/odd-pillows-smash.md | Declares the changeset for the mobile/common updates. |
48d5d26 to
6a57730
Compare
|
6a57730 to
2b189f6
Compare
2b189f6 to
9fffcac
Compare
9fffcac to
1cb66d2
Compare
|
🟢 E2E test for mobile : https://github.com/LedgerHQ/ledger-live/actions/runs/27769006057 |
|
E2E Desktop 🟢 with feedbacks : https://github.com/LedgerHQ/ledger-live/actions/runs/27770054165 |
|
Desktop test is failing on touch and button devices, could you please check? |
|
E2E CI is green with Nano X and SP 🥳 🟢 : |
| let isTransactionCheckDisplayed = false; | ||
| for (let attempt = 0; attempt < 60; attempt++) { | ||
| const texts = (await fetchCurrentScreenTexts(port)).toLowerCase(); | ||
| if (texts.includes(enableLabel)) { | ||
| isTransactionCheckDisplayed = true; | ||
| break; | ||
| } | ||
| if (texts.includes(reviewLabel)) { | ||
| break; | ||
| } | ||
| await sleep(500); | ||
| } | ||
|
|
||
| if (!isTransactionCheckDisplayed) { | ||
| return; | ||
| } |
francois-guerin-ledger
left a comment
There was a problem hiding this comment.
Need to rebase on origin/develop for the smoke tests fix.
| const port = getEnv("SPECULOS_API_PORT"); | ||
| const enableLabel = DeviceLabels.ENABLE_TRANSACTION_CHECK.toLowerCase(); | ||
| const reviewLabel = DeviceLabels.REVIEW_TRANSACTION.toLowerCase(); | ||
| let isTransactionCheckDisplayed = false; | ||
| for (let attempt = 0; attempt < 60; attempt++) { | ||
| const texts = (await fetchCurrentScreenTexts(port)).toLowerCase(); | ||
| if (texts.includes(enableLabel)) { | ||
| isTransactionCheckDisplayed = true; | ||
| break; | ||
| } | ||
| if (texts.includes(reviewLabel)) { | ||
| break; | ||
| } | ||
| await sleep(500); | ||
| } | ||
|
|
||
| if (!isTransactionCheckDisplayed) { | ||
| return; | ||
| } |
| export default class EvmStakePage { | ||
| startStakingCtaId = "account-quick-action-button-cta"; | ||
| addDelegationCtaId = "account-quick-action-button-addDelegation"; | ||
| amountInputId = "evm-delegation-amount-input"; |
|




✅ Checklist
npx changesetwas attached.📝 Description
e2e detox tests for the evm native staking; only the happy delegation path is tested and the delegation table check
❓ Context
🧐 Checklist for the PR Reviewers