Commit graph

37 commits

Author SHA1 Message Date
Jorge Martín
42a579a6d4 Fix screenshot tests blocking testDebugUnitTest task 2025-12-04 12:17:52 +01:00
Jorge Martin Espinosa
2e2d68ba83
Load JoinedRoom in home screen, pass it to the room flow (#5817)
* Load `JoinedRoom` in `HomeFlowNode.navigateToRoom`, then pass it to the next navigation nodes

* Add delayed loading indicator for cases when loading the room takes too long

* Avoid an extra FFI call in `RustRoomFactory`.

Use `RoomInfo.membership` instead.

Also use `computation` dispatcher, since it should reduce the delay when switching contexts.

* Remove the dispatcher usage when loading the room in `HomeFlowNode`, we immediately call a method that changes the dispatcher used

* Make sure only a single room is opened at a time
2025-12-02 15:22:55 +00:00
Benoit Marty
eb31505dc7 Copyright: Add Element Creations Ltd. copyright 2025-11-10 11:05:05 +01:00
Benoit Marty
f86431e663 Copyright: Add final period 2025-11-10 10:13:41 +01:00
Benoit Marty
c4e0370f41 Copyright: run command uv run license-editor --repository ../element-x-android 2025-11-10 10:09:26 +01:00
Benoit Marty
97f3be3dc5 Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
Jorge Martin Espinosa
4d6b37f157
Merge unit, screenshot tests and coverage in a single CI call (#3593)
* Merge unit, screenshot tests and coverage tasks in a single CI call

* Disable gradle daemon too since it's all in a single gradle call now

* Make Kover upload the HTML reports on failure too
2024-10-03 15:38:08 +02:00
Jorge Martin Espinosa
79c17f714f
Use Anvil KSP instead of the Square KAPT one (#3564)
* Use Anvil KSP instead of the Square KAPT one

* Fix several configuration cache, lint and test issues

* Allow incremental kotlin compilation in the CI

* Workaround Robolectric + Compose issue that caused `AppNotIdleException`

* Update the `enterprise` commit hash

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2024-10-02 11:52:17 +00:00
Benoit Marty
f61df38e55 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty
64cb2d29ae Move com.github.sergio-sastre.ComposablePreviewScanner:android:0.1.2 to gradle catalog and reorder dependencies. 2024-07-03 17:26:02 +02:00
Benoit Marty
39bb543617 Record preview for app icons. 2024-07-03 17:20:35 +02:00
Jorge Martin Espinosa
b0cebf5ca0
Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty
c4333544ac Remove other wrong dependency. 2024-06-14 10:30:10 +02:00
renovate[bot]
d4cde9bf59
Update plugin paparazzi to v1.3.2 (#2229)
* Update plugin paparazzi to v1.3.2

* Add Guava dependency constraint as a workaround

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-01-31 13:11:26 +01:00
Benoit Marty
5d086ad82d Fix moar ktlint issues 2024-01-11 10:02:10 +01:00
Jorge Martin Espinosa
f88507117b
Element Call SPA integration (#1283)
* Integrate Element Call into EX, being able to open its URLs and handle the call in-app.
* Add custom scheme support with format `element:call?url=...`.
* Update androix.webkit
* Silence the foreground service notification.
- Allow foreground service tap action to re-open the ongoing call.
- Unify notification small icons in different modules using a vector one.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-09-15 16:39:44 +02:00
Benoit Marty
ecc7ba0089 Move io.element.android.tests.uitests.ScreenshotTest to ui.T to generate much shorter name for screenshot files. 2023-08-17 18:09:09 +02:00
Benoit Marty
4312a96851 Cleanup: there are no androidTest on those modules. 2023-07-24 12:41:02 +02:00
Benoit Marty
62354326a9 Exclude app module for now. 2023-07-19 15:27:21 +02:00
Benoit Marty
2b71922cae Ensure uitest take preview from app module. 2023-07-19 14:47:30 +02:00
Benoit Marty
2686e5d912 Ensure uitest take preview from appnav module. 2023-07-19 14:41:41 +02:00
Jorge Martin Espinosa
8865cc2b57
Disable Paparazzi tasks when Kover is running. (#884)
* Disable Paparazzi tasks when Kover is running.

It allows us to split the test jobs between unit tests, screenshot test and coverage reports.

* Move Sonar upload to the quality workflow, since we have no lint info in tests.
2023-07-17 10:55:51 +02:00
Jorge Martin Espinosa
9251cbf536 [Message Actions] Report messages (#642)
* Add report messages feature

* Try to improve how snackbars are delivered

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-23 10:44:47 +02:00
Benoit Marty
2222ac7302 Add missing module, so that they can contribute to the screenshot test and the test coverage. 2023-06-16 17:13:00 +02:00
Benoit Marty
80b656a9c5 Use gradle logger to filter out when running with only warning logs. 2023-05-25 12:03:51 +02:00
Jorge Martin Espinosa
9a45e48d9e Group design components in Showkase for the Compound team (#375)
* Screenshot tests changes:

    - Group components for Showkase.
    - Set special Paparazzi config for scrolling screens using non null `Preview.heightDp`.
    - Add merged theme preview with `ElementThemedPreview` component.
2023-05-02 16:13:35 +00:00
Jorge Martin Espinosa
de010545fb Update Gradle to 8.1 and AGP to v8.0 (#329)
* Update AGP to 8.0.0.

* Set JAVA_HOME to JDK17

* Update lint version.

* Use right JDK for dependency analysis, replace deprecated env var.

* Upgrade to Gradle 8.1.

* Remove `@Supress(DSL_SCOPE_VIOLATION)` as it's no longer needed.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-17 08:49:52 +00:00
ganfra
91bff7fad4 Add utility methods for automatically including api/impl feature modules 2023-03-23 18:06:32 +01:00
Benoit Marty
b74e1e6074 allLibraries renamed to allLibrariesImpl and only reference implementation of the libraries. 2023-03-16 10:10:55 +01:00
Benoit Marty
9bdcaae0cf Create allFeatureApis extension and rename allFeatures to allFeaturesImpl 2023-03-09 14:52:40 +01:00
ganfra
0c6cd35b69 Rename tests/uitest modules 2023-01-20 17:51:52 +01:00
Benoit Marty
bfb8f4bba2 Cleanup 2023-01-18 15:49:57 +01:00
Benoit Marty
1336e2ab79 Change name of test 2023-01-18 15:49:57 +01:00
Benoit Marty
d68787b936 Plugin config 2023-01-18 15:20:45 +01:00
Benoit Marty
0c511b1092 Make generated code visible 2023-01-18 15:20:32 +01:00
Benoit Marty
7bbadf3765 Create extensions to include all libraries and all modules 2023-01-18 15:20:32 +01:00
Benoit Marty
d06351b69f Move Showkase to a dedicated module for ui tests. 2023-01-18 15:19:54 +01:00