Commit Graph

312 Commits

Author SHA1 Message Date
Doug
5d8875c12c Replace the Report a Problem button with the app's version on the start screen. (#4262)
Tapping it 7-times will secretly reveal the bug report screen 🤫
2025-06-27 10:09:35 +01:00
Mauro Romito
bd06f1a2f9 update ui tests for the poll form screen 2025-06-18 16:36:37 +02:00
Stefan Ceriu
0597759806 Fix UI test room list snapshots following toombstoned room introduction. 2025-06-12 16:54:53 +03:00
Stefan Ceriu
2b482e4dec Rename the BugReportUITests so it matches the other and the already recorded snapshot names. 2025-06-10 08:57:08 +03:00
Doug
bea64831cf Show an account provider picker on the server confirmation screen when required. (#4137)
* Add a picker mode to the ServerConfirmationScreen.

* Hook up the account provider picker in authentication the flow.

Simplify the authentication flow coordinator, removing the restricted state.

* UI/Snapshot tests.
2025-05-20 17:21:08 +01:00
Doug
33fcb8e667 Allow the app to be configured to bypass the server selection screen. (#4131)
* Make account provider configuration more flexible.

- Change defaultHomeserverAddress to an array of providers (needs UI).
- Add allowOtherAccountProviders to prevent the user from manually entering a provider.

* Refactor QR code scan failures into a common type.

* Validate scanned QR codes against the allowed account providers.

* Hide the login flow on the QR code screen when restricted.
2025-05-20 11:09:50 +01:00
Mauro Romito
5cd2ccbbab using stable 1.18.3 snapshot testing 2025-05-19 15:48:51 +02:00
Doug
cb5c7337d2 Add support for Account Provisioning links. (#4108)
* Add support for account provisioning links and route them to the authentication flow.

* Use the provisioning parameters to configure the authentication flow.

* Add UI tests for the provisioned authentication flow.

* Record new preview snapshots.

* Add unit tests.

* Make the domain configurable in the app settings.

* Use the loginHint in the login screen too.
2025-05-12 13:28:34 +01:00
Doug
834f62503e Fix the UI tests. (#4085)
* Compile errors 😬

* Update server selection snapshots.

The default footer string has changed.

* Remove the TemplateScreen UI tests.

We use preview tests for snapshots now, UI tests are for flow coordinators.

* Add the same looping on the OIDC UI test (but disable the test in the end).

* Run UI tests separately for iPhone and iPad.

GitHub runners don't seem to have enough memory to handle 2 simulators at once.
2025-05-02 12:47:31 +01:00
Stefan Ceriu
68b95764f9 Remove now unnecessary RoomListSummary lastMessageFormattedTimestamp 2025-04-28 18:51:13 +03:00
Mauro Romito
e024c1f264 possible fix for flaky UI tests
- increased the time for the oidc selection alert check
- for the poll screen creation, in the test only we reduced the number of options to 10
2025-04-28 15:53:09 +02:00
Mauro Romito
07e2329aeb UI tests fix 2025-04-28 15:53:09 +02:00
Mauro
3a9cd44247 support for UI tests on Xcode 16.3 2025-04-17 15:18:37 +02:00
Stefan Ceriu
b23d92e2cf Fix slightly change UI test snapshots. 2025-04-16 18:08:43 +03:00
Doug
2785d2a44b Fix authentication activity indicators when the authentication server is being slow
* Fetch the OIDC login URL as part of the Server Confirmation screen.

The loading indicator would show and hide while configuring and then immediately show again while fetching the URL.

* Allow the OIDCAuthenticationPresenter to show its own errors.

We no longer need to present errors in the authentication flow coordinator.
2025-04-11 11:22:39 +01:00
Stefan Ceriu
baaf5ea2a4 Fix UI test toggle tapping after compound accessibility change. 2025-04-07 12:19:14 +03:00
Stefan Ceriu
65bf02b70d Revamp the UI test snapshot naming convention to make them easier to organize and find. 2025-03-05 11:43:08 +02:00
Stefan Ceriu
4879c3842d Only show a badge in the composer if the room is unencrypted. (#3866)
* Partially revert the message composer encryption badges and only show it for unencrypted rooms.

* Update preview test snapshots.

* Update UI test snapshots.
2025-03-04 14:58:15 +02:00
Stefan Ceriu
13bbc4b31f Show room encryption state in the composer (#3841)
* Fixes #3835 - Show room encryption state in the composer

* Update the preview test snapshots

* Update the UI test snapshots.
2025-02-27 22:16:26 +02:00
Stefan Ceriu
b77ecf68e0 Fix various UI test snapshots following changes to the development assets. 2025-02-24 13:31:18 +02:00
Doug
1b68801f66 Update our development assets. (#3783)
* Replace downloaded test assets with original content.

* Replace AI generated assets with original content.

* Update preview tests snapshots

* Update UI test snapshots.

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2025-02-11 11:53:35 +00:00
Stefan Ceriu
63eef31833 Fix UI test snapshots following session verification screen changes. 2025-02-11 12:12:07 +02:00
Stefan Ceriu
010908f101 Revert "Disable continueAfterFailure for the AppLock UI tests"
This reverts commit b814472bad.
2025-02-05 14:04:01 +02:00
Stefan Ceriu
c6b707516d Revert "Attempt to fix the every flakey app lock setup test"
This reverts commit 54701564fa.
2025-02-05 14:04:01 +02:00
Stefan Ceriu
b814472bad Disable continueAfterFailure for the AppLock UI tests 2025-01-31 11:31:31 +02:00
Stefan Ceriu
54701564fa Attempt to fix the every flakey app lock setup test
We noticed that confirming the PIN will automatically hide the keyboard which makes the whole screen shift down while attempting to press the allow button. We also see an `App animations complete notification not received, will attempt to continue.` warning which seems to point to the same issue.
2025-01-29 17:31:03 +02:00
Stefan Ceriu
fdf1f8004d Fix wrong room roles and permissions screen UI snapshots. 2025-01-28 12:55:37 +02:00
Stefan Ceriu
1ba2ef6ec9 Delay snapshotting various flakey UI tests
- as per https://app.codecov.io/gh/element-hq/element-x-ios/tests/develop?historicalTrend=INTERVAL_30_DAY&parameter=FAILED_TESTS
2025-01-08 12:35:58 +02:00
manuroe
c29f4cc9b4 Dual licensing: AGPL + Element Commercial (#3657)
* New LICENSE-COMMERCIAL file

* Apply dual licenses: AGPL + Element Commercial to file headers

* Update README with dual licensing
2025-01-06 11:27:37 +01:00
Stefan Ceriu
33dea5a342 Fix encryption settings UI test snapshots 2024-12-25 21:00:48 +02:00
Stefan Ceriu
2c69019046 Monthly media gallery separators (#3601)
* Fix the order of the items in the media grid.
* Add media gallery timeline separators.
* Change the `SeparatorRoomTimelineItem` to have it expose a Date timestamp instead of a text string.
2024-12-11 13:32:29 +02:00
Stefan Ceriu
8407737977 UI test snapshot fixes (#3597) 2024-12-10 10:02:57 +02:00
Doug
64da80c6cb Use a Date for the timestamp in all timeline items. (#3590)
* Use a Date for the timestamp in all timeline items.

* UI test snapshots.

* Update snapshots

---------

Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2024-12-06 13:55:29 +00:00
Doug
a4d8655f6b Fix UI snapshots. (#3585)
* Remove old snapshots.

* Add a check for the correct simulator name.

* Record mismatched snapshots.

* Regenerate more snapshots using a (temporary) higher precision.

* Fix snapshot.
2024-12-04 11:59:53 +00:00
ElementRobot
7185838fd1 Translations update (#3523) 2024-11-18 10:59:17 +00:00
Stefan Ceriu
044d10ab10 UI test fixes (#3515)
* More UI test fixes

* Update all UITest snapshots.

* Wait for reset waiting indicator to be removed before snapshotting the encryption reset screen
2024-11-14 16:44:36 +02:00
Stefan Ceriu
699f633435 Fix UI tests following Xcode 16.1 migration 2024-11-14 08:16:23 +02:00
Stefan Ceriu
6c7b88a610 Fix useSessionScreen test snapshots. 2024-11-07 11:36:44 +02:00
Stefan Ceriu
1920c9074c Fix ElementCall UI test 2024-11-07 11:36:44 +02:00
Doug
13c10b434b Encryption Flow Coordinators. (#3471)
* Manage the secure backup screens with flow coordinators.

* Add UI tests for the EncryptionSettingsFlowCoordinator.

* Realise that the settings flow can't reset anymore and remove the sub-flow 🤦‍♂️

* Add UI tests for the EncryptionResetFlowCoordinator.
2024-11-04 14:22:50 +00:00
Stefan Ceriu
2881d77bbc Incoming session verification support (#3428)
* Fixes #1227 - Add support for receiving and interacting with incoming session verification requests.
* Fix a couple of random small warnings
* Move static view config to the view state
* Update snapshots
2024-10-29 15:21:17 +02:00
Doug
e25f10e74d Update HeroImage to match the BigIcon component from Compound. (#3439)
We can move it across in a following PR.
2024-10-23 12:13:14 +01:00
Doug
011343a1ea Update the secondary button stroke colour. (#3393)
* Update Compound which changes the secondary button stroke colour.

* Remove old UI test snapshots and update Acknowledgements.
2024-10-10 12:46:42 +01:00
Doug
2e9df064ca Ask the iPad to reveal the keyboard in UI Tests when it's hidden. (#3389) 2024-10-10 08:38:40 +01:00
Doug
bfd8a31701 Fix an authentication UI test snapshot. 2024-10-09 11:51:55 +01:00
Doug
ee12674208 Record missing snapshot. (#3374) 2024-10-07 10:50:03 +01:00
Stefan Ceriu
45d59c57d6 Bump the RustSDK to v1.0.53: adopt latest record based timeline item APIs (#3356) 2024-10-01 18:50:11 +03:00
Doug
94f5879639 Configure the AuthenticationService later now that we have 2 flows on the start screen. (#3316)
* Don't query the homeserver until confirming it (or selecting a different one).

* Setup the infrastructure to test AuthenticationService.

Implement basic tests for configuration & password login.

* Use the real AuthenticationService with a mock Client in all of the tests.

* Add tests for the ServerConfirmationScreenViewModel.

* Remove redundant view state and test for it.
2024-09-25 14:40:18 +01:00
Doug
830f8e9db7 Fix various flakey tests. 2024-09-23 16:25:49 +01:00
Doug
40567ffafa Use an environment variable to record failures. 2024-09-23 16:25:49 +01:00