To make the feature files style consistent for direct string and also use it for examples (params), it has been introduced "" to all plain strings and also into the parameters, that now will be written like this: "<example-param>": Applied on the complete `suite_messaging` and in specific statements of the `onboarding / login`.
- Reviewed `suite_messaging/tst_ChatFlow` feature: Cleanup of duplicated steps and separation of action / validation applied.
- Reviewed `suite_messaging/tst_groupChat` feature.
- Added new tag to `Jenkins` file: `relyon-mailserver`.
- Added new `StartupSteps` class to manage init / startup static methods outside bdd steps. It can be used as a util in `hooks` and `steps`.
Closes#7931
Updated `Create` and `Confirm` password views according to new design decisions taken to give consistency to the onboarding screens (related to font-size).
Updated related squish test cases: Screenshots updated with new font-size and refactored some objectNames and objects that where using `text` property instead of `objectName`.
Updated `Input` components to `StatusPasswordInput` ones.
Fixes#7447
- Created new `suite_wallet` where all related wallet tests will be migrated to.
- `tst_wallet` has been moved to new `suite_wallet`.
- `tst_transaction` has been moved to new `suite_wallet`.
Tests inside `suite_wallet` still contain some broken tests.
Closes#7627
- Created new `suite_settings` where all related settings tests will be migrated to.
- `tst_languageSettings` has been moved to new `suite_settings`.
- `tst_settingsMenu` has been moved to new `suite_settings`.
- `tst_userIdentity` has been moved to new `suite_settings`.
Tests inside `suite_settings` still contain some broken tests.
Closes#7626
- Created new `suite_communities` where all related communities tests will be migrated to.
- `tst_searchFlows` has been moved to new `suite_communities`.
- `tst_communityMessageFlows` has been moved to new `suite_communities`.
- `tst_communityFlows` has been moved to new `suite_suite_communitiesonboarding`.
Tests inside `suite_communities` still contain some broken tests.
Closes#7625
Created new `suite_messaging` where all related chat tests will be migrated to.
- `tst_ChatFlow` has been moved to new `suite_messaging`. It still contains some broken tests.
- `tst_groupChat` has been moved to new `suite_messaging`. It is now working (but it relies on the mailserver so could fail sometimes).
- `tst_statusLoginPassword` has been moved to new `suite_onboarding`.
- It has been needed to move some object definitions from `chat_names.py` to `global_names.py` since they are shared between different suites.
- Some other minor object and steps definitions have been moved to fit with the new structure.
Closes#7624
The create a group chat related objects have been updated according to new qml changes.
Now these tests are working (if they don't work it is bc of mailserver reliability).
"the user lands on the signed in app" step incorporates the following verifications (main screen is ready):
- Splash screen animation is loaded and ended.
- Banners that appear in the main screen are closed before starting other actions (secure seed phrase, connection information and update app information banners).
The gif test was manually activating the unfurling, which is no longer
necessary. Now check that enabling gifs will enable tenor unfurling
Also add a test for image unfurling and validate the unfurling image
links components and preview settings.
Also
- fix the other saved addresses that were relying on the order of
buttons and fail after adding the favourite button
- improve the rest of the tests
- improve debug buttons
- extend driver with helper functions
Closes: #6898
The test network was toggled twice. The banner was impeding with the wallet setting click. The asset list item was missing the objectName and also checking the balance was not resilient
- Added new test case `tst_passwordStrength` in `suite_onboarding` that uses squish screenshot validation.
- Added verification points (mac OS) for some password strength validations, using pixel comparison and some minor percentage of failure / color precision allowed.
Closes#7003
WIP:
- Added new global scripts folder `global_shared` where global hooks, names and steps will be stored.
- Created new `suite_onboarding` and moved existing test case related to it as a poc.
- Updated all `test.py` files to use global files and fit the new structure.
`tst_languageSettings`:
- Feature and basic scenarios definition: Change language by selection and change language by search.
- Added `StatusLanguageScreen` class and related methods to change and validate language.
`SquishDriver`:
- Added support to scroll at a specific list view index.
- Added support to directly type into a focused element.
`settings_names.py`:
- Added support for object names related to `side bar` options.
- Unified some nomenclature related to settings objects.
`LanguageView`:
- Updated to allow registering the change on Linux before the restart popup is shown so the language test can work.
Closes#6903
Note: interaction between clients is not tested here to avoid dependency
on mailserver. When mailserver is mocked more comprehensive tests should
be provided, that is: verify if identity properties are propagated
and read correctly between two different clients.
closes: #6950
`tst_chatFlow`:
- Commented out bc of `mailserver` issues and then weak.
- Added basic test scenario for sending a mention in a public chat with needed validations.
- Added basic test scenario to check a mention cannot be done if it is a non existing user.
`StatusChatScreen` updates:
- Updated join room method to validate the chat is loaded.
- Added methods for doing and verifying a mention.
`SquishDriver` updates:
- Added support in `SquishDriver` to click into a link in a text or label component.
- Minor function renames.
Closes#6879
Exposes status-go API for retrieving networks and tokens
Tests for the exposed API
Introduced boost for the multiprecision library and 256 bits support
for balance.
Update build instructions
Updates: #6321
- Created new test case with basic create group chat scenario.
- Added specific data folder for `tst_groupChat`.
- Removed deprecated data folder.
- Added dynamic login (depending on the account).
- Added global account information in `suite_status/data` folder.
- Added new group chat validations, title, history texts, members added and send chat message.
- Replaced some ids by objectNames.
- Some improvements in `names.py`.
- Onboarding objects refactor.
Fixes#6444
Important changes:
- Converted the easy to mix strings to named types as phantom types
- Renamed `AccountDto`s to `MultiAccount` to better match the status-go
domain knowledge.
- Renamed MultiAccount to ChatOrWalletAccount to better match its multi
purpose and don't confuse with the MultiAccount domain knowledge.
- Remove libs/CMakeLists.txt
Note: Tried to use the fluent::NamedType but it doesn't work with
nlohmann_json, gave up finding why. Therefore I extracted only
the needed functionality for the simple types we use.
Updates: #6321
Considerations
- MultiAccountStoreAccount is required for generating a new account.
MultiAccountStoreDerivedAccounts won't be enough even that it works
for creating initial account and login code
- Validate the understanding that `rootAccount.address` is `walletAccount.derivedFrom`
Updates: 6321