* Fix testUserFlow integration tests
- Use 'Close' instead of 'Cancel' button label when dismissing location picker
- Scroll up to make the People button visible before tapping it
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fixup! Fix testUserFlow integration tests
* Integration tests: Add logout handling for MAS authentication
It is useful when relaunching tests locally. It avoids them to fail because the MAS webview is already logged it from a previous session.
* Swipe until the People button is hittable.
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
* Fix logging/alerts during OIDC cancellation.
- Cancelling from within the web view wasn't being handled since moving the UserIndicatorController into the presenter.
- The WAS canceledLogin error code is also used when the system cancels the login. When the system cancels there's a failure reason included in the error.
* Allow UI tests to tap on any point within a view.
* Make the homeserver optional in integration tests.
* Dismiss the keyboard after entering a username to reveal the password text field.
Do the same after entering the password field too, just in case.
* Add a loop while waiting for the WAS prompt to be shown.
* Re-write integration test login for OIDC.
* Fix integration test logout button not being visible.
---------
Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
* Disable image and document picker integration tests as they randomly fail to load and are flakey.
* Delete any pre-existing log files
* Various tracing tweaks and fixes:
- delete the custom tracing log levels as we can't control their ouput
- implement comparable on them
- change default levels only if the new chosen level increases their verbosity
* Make logging targets mandatory and fix their logging levels
* Switch back to using the `run_tests` reset simulator flag as `fastlane snapshot reset_simulators` was too generic and slow
* Switch all integration test taps to `tapCenter` (nee forceTap) after noticing missed taps on CI.
* Make the logging file prefix explicit, let the main app not use one.
* Rename tracing configuration `target` to `currentTarget`
* Send a message from integration tests and check that it doesn't show up in the app logs
* Increase photo library timeout
* Wait for image tapping to process
* Send a message using the rich text editor too
* Wait for the various pickers to finish loading
* Set all logs to `trace` in integration tests
* Close formatting options after sending the second message
* Make sure logs are actually sent to tracing and get redirected to the right file
* Switch from using a custom `trace` log configuration to the lowest level `TracingConfiguration` we support
* Add confirmation that the user would like to discard unsaved changes.
* Update string on permissions screen.
* Fix UI tests and update snapshots.
* Fix integration tests.
* Run periphery for Moderation feature.
* Remove the welcome screen
* Allow the UserSessionFlowCoordinator to control the whole app hierarchy, not only its splitView
* Start using the new verification state listener
* Rename Onboarding to AuthenticationStart in preparation for the new OnboardingFlowCoordinator; update snapshots and tests
* Make the AuthenticationCoordinator a proper FlowCoordinator
* Add some padding around the authentication start screen report a problem button
* Bump the RustSDK to v1.1.49
* Only add bottom padding on the authentication start screen report a problem button
* Improve integration test timings and alert handing
* Add missing `receive(on: DispatchQueue.main` on the invites screen
* Wait for photo library to load
* Disable the preferForLoop swiftformat rule and fix a couple of new warnings
* Delay invites screen snapshotting after dispatch main queue addition
* Add signposts to performance tests.
- Update flow to include support for the migration screen.
* If the welcome screen shows, click on the button.
* Ensure a clean simulator each run.
* Add accessibility identifier for migration screen if required.
* Handle walking into the room and back out again.
* use iphone 14 pro to match what's used in xcode.
* Remove ApplicationTests as duplicated in LoginTests.
We measure app startup time in LoginTests as part of the flow - we may as well avoid spending 60s doing only that measurement in ApplicationTests
* Sleep 10s, the ui is otherwise showing up in random order.
* Revert "Remove ApplicationTests as duplicated in LoginTests."
This reverts commit 8670710315bcd0d6c3c3046f534b32b4c728b837.
* Update script to parse out correct values from results file.
* Allow cancellation of password prompt in any order.
* Remove test timeout, performance tests will always take a while.
* Adjust parsing further
* Remove ApplicationTests.
* Move to a more elegant way to wait for something to disappear.
* Linting.
* Fix unit tests.
---------
Co-authored-by: Doug <douglase@element.io>
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>