CW 882: Integrate Seed Verification Flow To Integration Tests#1966
CW 882: Integrate Seed Verification Flow To Integration Tests#1966OmarHatem28 merged 77 commits intomainfrom
Conversation
…Integrate-Seed-Verification-Flow-To-Integration-Tests
… test script to add a watch dog to prevent infinite running on CI
https://github.com/cake-tech/cake_wallet into Integrate-Seed-Verification-Flow-To-Integration-Tests
… and resulting errors
…Integrate-Seed-Verification-Flow-To-Integration-Tests
# Conflicts: # lib/src/screens/wallet_keys/wallet_keys_page.dart
This change: - Updates apkl file naming to use sanitized branch names for better consistency. - Adds a step to output system environment information to aid in troubleshooting. - Enhances KVM setup with checks to see if device exists and there is proper permission. - Adjusts working directory references for Android emulator setup.
This change: - Adds cleanup steps for existing emulator processes to ensure fresh environment. - Updates APK file naming to use sanitized branch names for consistency. - Enhances debug output for APK file creation and searching, improving visibility during the workflow.
This change: - Increases timeout for integration tests to 60 minutes. - Adds a timeout of 90 minutes for the automated integration test job. - Improves KVM setup with detailed checks and outputs for existing device, permissions, and functionality. - Adds system resource checks to provide information on memory, disk space, and CPU cores during the workflow. - Implements error handling for the integration test runner to ensure graceful failure reporting.
…checks This change: - Enhances the scrolling logic in the CommonTestCases to check for item visibility before scrolling. - Adds error handling and logging for transaction history checks in TransactionsPageRobot. - Adds comprehensive item checks and scrolling for more reliable tests.
…and logging This change: - Implements error handling and logging throughout the integration test runner. - Introduces a cleanup function for data directories and signal handling. - Enhances test execution with retry logic and detailed duration tracking. - Provides a comprehensive summary of test results, including passed and failed tests with their durations.
…Integrate-Seed-Verification-Flow-To-Integration-Tests
…workflow This change simplifies the automated integration test workflow by removing the manual emulator startup process, which was previously included to handle cases where no emulator was running. The workflow now focuses on checking the emulator status and gathering device information without attempting to start an emulator manually.
This change: - Modifies the send flow test to send $1 worth of any of the wallet currencies - Set up switching between test wallet in case there's zero balance in any of the wallets when the test is run - Add a mini script to check emulator readiness for the tests
|
Hey - please put integration tests as part of Android ci run so we don't waste the time on building the app twice |
That won't be the best in this case. It would elongate the length of the Android ci unnecessarily. Plus there are other steps and optimisations present in the automated test ci not needed in the Android CI. Let's keep them separate. Plus, its much better for each workflow file to have its own focus, as we currently do for all our workflows |
…gs service, plus some syntax errors in the workflow
…nd timing adjustments This change: - Adds visibility checks for widgets before interaction in various test flows. - Introduces consistent pump and settle durations to ensure UI stability during tests. - Refines scrolling logic to confirm wallet types are visible before selection. - Updates tap actions to include warnings for missed taps, improving test reliability.
since we will be handling the CI in a different PR anyway, we can separate them into Jobs, and make the test build and the integration tests depend on that job, so we have them separated, but still only single build |
…Integrate-Seed-Verification-Flow-To-Integration-Tests
| // Update the amount field with the converted value | ||
| await enterSendAmount(cryptoAmount); | ||
| await commonTestCases.defaultSleepTime(); |
There was a problem hiding this comment.
why do we need this, the crypto amount should be automatically populated anyway
Issue Number (if Applicable): Fixes #
Description
Please include a summary of the changes and which issue is fixed / feature is added.
Pull Request - Checklist