Files
1659b2133b tests(mobile): add WalletConnect connected-dApps management Maestro flows (#8286)
* docs(mobile): clarify e2e store immutability and proposal-sheet a11y comments

Note that createE2eStore state must be updated via set() (shallow-cloned initial),
and that RequestSheetHost's accessible={false} matches the app's other sheets.

* tests(mobile): add WalletConnect connected-dApps management Maestro flows

Covers WA-2325: the conditional "Connected apps" settings entry and all
three disconnect paths (3-dots menu, swipe-to-trash, dApp-initiated
session_delete), plus the cancel path and the explicit no-toast negative
assertion for the dApp-initiated case. Adds a seedWcSession harness
helper (TestCtrls: e2eWcSeedSession) so management flows start with an
approved session without replaying pairing.

---------

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-27 16:04:48 +02:00

62 lines
1.4 KiB
YAML

appId: ${APP_ID}
tags:
- walletconnect-dapps
---
# Disconnect via the row's 3-dots menu: menu → Disconnect → confirm sheet →
# Disconnect → success toast + row removed (empty state shown).
- runFlow:
file: ../../utils/setup/app-start.yml
- tapOn:
id: 'e2eWcDappsBase'
- assertVisible:
id: 'home-tab'
- tapOn:
id: 'e2eWcSeedSession'
# Open the connected-apps list.
- tapOn: 'Account, tab, 3 of 3'
- extendedWaitUntil:
visible:
id: 'settings-connected-apps-entry'
timeout: 10000
- tapOn:
id: 'settings-connected-apps-entry'
- extendedWaitUntil:
visible:
id: 'connected-dapp-row'
timeout: 10000
# Open the 3-dots menu. The menu items are OS-rendered (@react-native-menu),
# so the Disconnect item is only reachable by its visible text.
- tapOn:
id: 'connected-dapp-menu-e2e-session-topic'
- extendedWaitUntil:
visible:
text: 'Disconnect'
timeout: 5000
- tapOn:
text: 'Disconnect'
# Confirm sheet → Disconnect → toast "Uniswap disconnected" (2.5s window).
- extendedWaitUntil:
visible:
id: 'disconnect-confirm-button'
timeout: 10000
- tapOn:
id: 'disconnect-confirm-button'
- extendedWaitUntil:
visible:
text: 'Uniswap disconnected'
timeout: 10000
# Row removed; the empty state is the positive anchor for the removal.
- extendedWaitUntil:
visible:
text: 'No connected apps.'
timeout: 10000
- assertNotVisible:
id: 'connected-dapp-row'