[LWM] Staking/Unstaking e2e tests#18901
Conversation
Five Detox specs (earning-choice, stake, unstake, change-validator and end-delegation blocked) plus the staking-section row test ids they need.
Web Tools Build Status
|
|
There was a problem hiding this comment.
Pull request overview
This PR adds Ledger Live Mobile (Detox) end-to-end coverage for the Tezos staking/unstaking flows behind the llmTezosStaking feature flag, and introduces distinct testIDs in the Tezos account “staking section” rows to make those flows reliably targetable from e2e.
Changes:
- Add 5 new Tezos staking-related Detox specs (earning choice, stake, unstake, and two “unstake required” guard specs).
- Introduce a dedicated
TezosStakePagepage object and wire it into the e2eApplication. - Add distinct
testIDs for Tezos staking-section rows (tezos-staking-row,tezos-unstaking-row, while keeping delegation row defaulting totezos-delegation-row).
Reviewed changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| e2e/mobile/specs/stake/earnChoiceTEZOS.spec.ts | Adds earning-choice routing e2e spec for Tezos (undelegated seed). |
| e2e/mobile/specs/stake/stakeTEZOS.spec.ts | Adds Tezos stake flow e2e spec (delegated+staked seed). |
| e2e/mobile/specs/stake/unstakeTEZOS.spec.ts | Adds Tezos unstake flow e2e spec (delegated+staked seed). |
| e2e/mobile/specs/stake/changeValidatorBlockedTEZOS.spec.ts | Adds “change validator blocked while staked” guard e2e spec. |
| e2e/mobile/specs/stake/endDelegationBlockedTEZOS.spec.ts | Adds “end delegation blocked while staked” guard e2e spec. |
| e2e/mobile/specs/stake/stake.ts | Shared Tezos staking/unstaking test runner utilities (init, navigation, flows). |
| e2e/mobile/page/trade/tezosStake.page.ts | New page object encapsulating Tezos stake/unstake/guard interactions. |
| e2e/mobile/page/index.ts | Registers tezosStake page in the e2e Application container. |
| apps/ledger-live-mobile/src/families/tezos/Delegations/Row.tsx | Makes Tezos DelegationRow accept a configurable testID (default preserved). |
| apps/ledger-live-mobile/src/families/tezos/Delegations/index.tsx | Assigns a distinct testID to the staking row in the staking section. |
| apps/ledger-live-mobile/src/families/tezos/Delegations/UnstakingRow.tsx | Assigns a testID to the unstaking row in the staking section. |
| .changeset/gentle-mangos-retire.md | Records the live-mobile patch changeset for added Tezos testIDs. |
Mobile Bundle Checks🚀 main.ios.jsbundle bundle size decreased (60.2mb -> 59.9mb). Thanks ❤️ Desktop Bundle Checks🚀 renderer bundle size decreased (14.7mb -> 14.6mb). Thanks ❤️ |
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 |
Suffix with position.uid so repeated unstaking rows are not ambiguous to Detox.
| return ( | ||
| <DelegationRow | ||
| testID={`tezos-unstaking-row-${position.uid}`} | ||
| baker={baker} | ||
| address={address} | ||
| amount={position.amount} |
3ca5d20 to
fb46bf1
Compare
|



✅ Checklist
npx changesetwas attached.📝 Description
Mobile (Detox) e2e for Tezos staking (
llmTezosStaking), mirroring desktop LIVE-32928. Five Speculos-signed specs: earning-choice, stake, unstake, and the change-validator / end-delegation "unstake required" guards.App-source change is test-id only: the staking-section rows shared one
tezos-delegation-rowtestID; they now exposetezos-staking-row/tezos-unstaking-row/tezos-delegation-row. No behaviour change. All five pass locally.❓ Context
🧐 Checklist for the PR Reviewers