Files
Daniel DimitrovandGitHub 0c83c9f941 test(mobile): refactor the e2e tests (#6642)
* fix(mobile): infoSheet loses content

* test(mobile): refactor e2e tests

Reorganise the e2e test and make them easier to maintain. The previous structure was monotlithic. One would start the history tests and would have to wait for all of them to complete. Now one can test individual features - like twap, swap, stake txs without having the run the whole flow. Each of those can be run on it’s own. They can also be run as a whole in the __suite__ - every suite is optimised to start the app once and then to run flow without uninstalling and instalilng the app again.

* test(mobile): run tests on android as well

* test(mobile): fix wrong mock data

* fix(mobile): linting

* test(mobile): make assertions android compatible

* fix(mobile): prettier

* test(mobile): add stake claim test

* test(mobile): speed up app launch in dev mode

* test(mobile): test improvements

* test(mobile): unstable hooks caused app to crash

There was somethign wrong with AssetsNavbar and the way that react-navigation renders it. In tests we got crashes due to different number of hooks being rendered

* test(mobile): fix prettier
2025-11-14 18:02:10 +01:00

47 lines
1.4 KiB
YAML

appId: ${APP_ID}
tags:
- util
---
- runScript:
file: ../../utils/scripts/defaults.js
# ===========================================
# Action Detail View (Reusable Component)
# ===========================================
# Action details view shows the action name
# And displays either:
# 1. "Call" with method name badge (if dataDecoded?.method exists)
# 2. "Interacted with" with address identicon (if no method)
#
# Can be used for both history transactions and pending transactions
# Verify either "Interacted with" or "Call" section is visible
- assertVisible:
text: '.*(Interacted with|Call).*'
# Verify address information is displayed
# Either as identicon + address in "Interacted with" or in "Contract" field
- extendedWaitUntil:
visible:
id: 'action-details-interacted-with'
containsDescendants:
- text: '0x[0-9a-fA-F]{4}.*[0-9a-fA-F]{4}'
optional: true
timeout: ${output.defaults.extendedWaitUntilTimeout}
# Verify "Contract" field is visible (always shown in action details)
- assertVisible: 'Contract'
# Verify contract address is displayed with copy/external link icons
- assertVisible:
id: 'action-details-contract'
containsDescendants:
- id: 'hash-display-name-or-address'
text: '.*(0x[0-9a-fA-F]{4}.*[0-9a-fA-F]{4}|[A-Za-z].*)'
# Go back to actions list
- tapOn:
id: 'go-back'
# Verify we're back at the Actions view
- assertVisible: 'Actions'