mirror of
https://github.com/luxfi/safe-wallet.git
synced 2026-11-02 15:28:09 +00:00
* 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]>
62 lines
1.4 KiB
YAML
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'
|