Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR adds Maestro end-to-end testing infrastructure to automate testing between dapp and wallet applications. The changes include improved test reliability through testID additions, updated package dependencies, and comprehensive GitHub Actions workflows for both iOS and Android platforms.
- Added testID props to ActionButton component and ModalFooter for reliable test element identification
- Updated package dependencies across multiple dapp projects to newer versions
- Created comprehensive GitHub Actions workflows for building and testing both iOS and Android applications with Maestro
Reviewed Changes
Copilot reviewed 28 out of 36 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| wallets/rn_cli_wallet/src/components/ActionButton.tsx | Added testID prop to ActionButton component for test automation |
| wallets/rn_cli_wallet/src/components/Modal/ModalFooter.tsx | Added testID attributes to approve and reject buttons |
| wallets/rn_cli_wallet/src/screens/Scan/index.tsx | Fixed null check comparison for device variable |
| dapps/W3MWagmi/scripts/misc_internal.ts | Temporarily disabled linkMode with TODO comment |
| dapps/W3MWagmi/package.json | Updated multiple package versions including appkit and walletconnect dependencies |
| dapps/W3MEthers5/package.json | Updated appkit and walletconnect package versions |
| dapps/W3MEthers/package.json | Updated appkit and walletconnect package versions |
| .maestro/web/*.yaml | Enhanced test flows with testID-based element selection and improved timing |
| .maestro/native/*.yaml | Enhanced test flows with testID-based element selection and platform-specific handling |
| .github/workflows/ci_e2e_tests_ios.yaml | Created comprehensive iOS E2E testing workflow with app building and Maestro testing |
| .github/workflows/ci_e2e_tests_android.yaml | Created comprehensive Android E2E testing workflow with emulator setup and testing |
| .github/workflows/release-*.yaml | Updated action versions and refactored file setup into reusable actions |
| .github/actions/ci-setup*/action.yml | Created reusable actions for iOS and Android file setup, updated cache versions |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| </TouchableOpacity> | ||
|
|
||
| {showCamera && device ? ( | ||
| {showCamera && device != null ? ( |
There was a problem hiding this comment.
Use strict equality comparison (!== null) instead of loose inequality (!= null) for better type safety and consistency with modern JavaScript practices.
- Add pull_request triggers with path filters so E2E tests only run on relevant changes - Explicitly disable iOS code signing (CODE_SIGNING_ALLOWED=NO) - Add SENTRY_DISABLE_AUTO_UPLOAD for iOS builds - Simplify Android test script (remove verbose debug, unnecessary sleeps) - Remove commented-out code, fix artifact upload conditions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
# Conflicts: # .github/actions/ci-setup/action.yml # .github/workflows/release-android-base.yaml # .github/workflows/release-ios-base.yaml # dapps/W3MEthers/ios/Podfile.lock # dapps/W3MEthers/package.json # dapps/W3MEthers/yarn.lock # dapps/W3MEthers5/ios/Podfile.lock # dapps/W3MEthers5/package.json # dapps/W3MEthers5/yarn.lock # dapps/W3MWagmi/ios/Podfile.lock # dapps/W3MWagmi/package.json # dapps/W3MWagmi/scripts/misc_internal.ts # dapps/W3MWagmi/yarn.lock # wallets/rn_cli_wallet/android/build.gradle # wallets/rn_cli_wallet/ios/Podfile.lock # wallets/rn_cli_wallet/ios/RNWeb3Wallet.xcodeproj/project.pbxproj # wallets/rn_cli_wallet/package.json # wallets/rn_cli_wallet/src/components/ActionButton.tsx # wallets/rn_cli_wallet/src/components/Modal/ModalFooter.tsx # wallets/rn_cli_wallet/src/screens/Scan/index.tsx # wallets/rn_cli_wallet/yarn.lock
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Summary
Added github actions to run maestro tests between dapp and wallet