Commit Graph

66 Commits

Author SHA1 Message Date
Benoit Marty
4188d58b56 Implement month separator for the Gallery.
Improve day separator rendering in the timeline.
Use Today, Yesterday, and the name of the day if less than 7 days and do not render the year for the current year.
Improve date format for the media viewer.
Rework how date and time are computed.
ActionListView: Time can take more space, so update the layout.
2024-12-11 23:57:57 +01:00
Benoit Marty
915416bb5e Rename parameter. 2024-11-08 10:11:06 +01:00
Benoit Marty
22bb8796ef Delete temporary created files. 2024-11-08 10:11:06 +01:00
Benoit Marty
202a7d0544 Remove runBlocking usage in LambdaRecorder. 2024-10-16 10:03:18 +02:00
Jorge Martin Espinosa
e44b5ad98d Upgrade Kotlin to v2.0 (#3594)
* Bump Kotlin to v2.0

* Fix lots of issues due to the upgrade: lint issues, function signature incompatibilities, broken tests, etc.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-10 08:32:00 +00:00
Benoit Marty
4d554de838 Merge pull request #3554 from element-hq/feature/bma/testEmptyTimeline
Add unit tests on TimelineItemsSubscriber
2024-10-02 14:04:48 +02:00
Jorge Martin Espinosa
4a43fcb69a 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
015d59af13 Remove runCancellableScopeTest and runCancellableScopeTestWithTestScope, we can use TestScope.backgroundScope instead. 2024-09-27 18:37:16 +02:00
renovate[bot]
0dac449fec Update dependency androidx.compose:compose-bom to v2024.09.00 (#3399)
* Update dependency androidx.compose:compose-bom to v2024.09.00

* Adapt code for changes.

* Workaround crash when closing the RTE

* Fix broken bottom sheet colors and shape

* Fix tons of warnings and deprecations

* Fix lint issues

* Fix more M3 update changes

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: ganfra <francoisg@matrix.org>
Co-authored-by: ElementBot <android@element.io>
2024-09-26 09:30:20 +02:00
Benoit Marty
f4d8907f11 Add test on RustRoomDirectoryList 2024-09-19 15:40:25 +02:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Jorge Martin Espinosa
176755ac33 Subscribe to RoomListItems in the visible range (#3169)
* Subscribe to `RoomListItems` in the visible range

This ensures the room list items always have updated info.
2024-07-11 10:54:56 +02:00
Benoit Marty
13f2439604 Remove extra parenthesis 2024-07-08 13:19:35 +02:00
Benoit Marty
d00af657a2 Add Ui test on CallScreenView 2024-07-08 12:30:06 +02:00
Jorge Martin Espinosa
950e502ca6 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
Jorge Martin Espinosa
6f8de0b2c6 Element Call ringing notifications (#2978)
- Add `ActiveCallManager` to handle incoming and ongoing calls.
- Add ringing call notifications with full screen intents and missed call ones as part of the 'conversation' notifications.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-06-10 11:51:19 +02:00
Jorge Martin Espinosa
801f0b955d Notifications: simplify the flow by removing persistence (#2924)
* Notifications: simplify the flow by removing persistence. 
* Bump of minSdk to `24` (Android 7).
* Add migration to remove `notification.bin` file
2024-05-29 08:03:23 +00:00
Benoit Marty
4fc3c6f889 Introduce lambdaError instead of using TODO, to handle error when a lambda is invoked and it should not. 2024-05-23 09:12:40 +02:00
Jorge Martin Espinosa
2e93d842c7 UX cleanup: DM details screen (#2820)
* UX cleanup: user profile.

- Move send DM to a CTA button.
- Add 'Call' CTA button too when there is a DM with that user and a call is possible.
- Add missing tests.

* Update screenshots

* Add tests for clicking on the avatar

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-08 16:05:02 +02:00
ganfra
9ffed34303 Timeline : continue to fix more tests... 2024-04-25 12:41:34 +02:00
ganfra
35b12f265f Room directory : add tests and cleanup 2024-03-28 17:03:34 +01:00
ganfra
13aa578e11 Tests : improve lambda recorder 2024-03-28 14:59:22 +01:00
ganfra
00613da64c Tests : create lambda recorder 2024-03-28 10:34:12 +01:00
Jorge Martin Espinosa
eabdb9ae4d Add isInDebug variable to simulate debug/release configs for tests (#2566)
* `isInDebug` as `ThreadLocal<Boolean>`

* Use a simple var for `isInDebug` and add a helper method to test release mode, when running the debug test.

* Add some more docs

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-03-18 17:56:07 +01:00
ganfra
9d6f68ac82 Tests: raise default timeout of consumeItemsUntilPredicate to 3 seconds (like awaitItem) 2024-03-13 12:44:59 +01:00
ganfra
dbba95a830 Merge branch 'develop' into feature/fga/room_list_filter_iteration 2024-03-13 12:07:20 +01:00
Jorge Martin Espinosa
d19b3fe091 Change a room's permissions power levels (#2525)
* Change a room's permissions power levels

* Make `currentPermissions` use a `MatrixRoomPowerLevels?` instance instead.

* Update strings

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-12 15:45:06 +01:00
ganfra
3cb189f475 RoomList: refactor and fix tests 2024-03-12 15:38:33 +01:00
Benoit Marty
6801ef9524 Add test on RoomDetailsView 2024-02-22 15:23:22 +01:00
Benoit Marty
addc3d4782 Improve test framework. 2024-02-21 18:30:57 +01:00
Benoit Marty
7077b8e1bd Add missing period. 2024-02-07 23:23:49 +01:00
Benoit Marty
f9599a6a6f Add tests on MessagesView 2024-02-07 23:02:32 +01:00
Benoit Marty
6c96b53d9f Add result type to EnsureCalledOnceWithParam 2024-02-07 23:02:32 +01:00
Benoit Marty
28f26b1aae Add test for TimelineItemPollView 2024-02-06 18:30:27 +01:00
Benoit Marty
824de9cc11 Add test to ensure that TimelineView loads more Events. 2024-02-06 17:12:14 +01:00
Jorge Martin Espinosa
f9c5cd07a9 Return cached room members before fetching new ones, do it in batches (#2274)
* Use cached users from the Rust SDK.

Also lazy load received users by batches.

* Create `RoomMemberListFetcher` to wrap all the room member loading logic

* Ensure we clear `RoomMember` Rust references if the fetching coroutine is canceled
2024-01-23 18:23:20 +01:00
Benoit Marty
7baaac09ba Add missing test for LogoutView 2024-01-09 17:53:24 +01:00
Benoit Marty
0628ceabc1 Iterate on EnsureCalledOnce devX 2024-01-08 10:07:48 +01:00
Benoit Marty
ba2c297118 Add run method to EnsureCalledOnce and EnsureCalledOnceWithParam to ensure that assertSuccess is always called. 2024-01-08 10:01:26 +01:00
Benoit Marty
6798352fb7 Use string resource instead of hard-coded strings. 2024-01-08 09:50:08 +01:00
Benoit Marty
6b2f79959d Improve assertion message. 2024-01-08 09:35:14 +01:00
Benoit Marty
69e8384163 Add first tests on compose click interaction. 2024-01-05 18:00:44 +01:00
Benoit Marty
06c9da277b Let consumeItemsUntilPredicate fail if predicate is never true or if Complete occurs.
Do not fail on error for `consumeItemsUntilTimeout`
2023-12-15 20:07:11 +01:00
ganfra
bde2705654 Pin create: add test for presenter 2023-10-19 15:45:11 +02:00
Jorge Martin Espinosa
ae7c2257df Improve coverage in permalinks package (#1502)
* Improve coverage in permalinks package
2023-10-06 11:37:26 +02:00
Marco Romano
5d8666a507 Warmup molecule only once. 2023-09-13 15:42:48 +02:00
jonnyandrew
301e49c3a3 Reduce test flakiness by warming up molecule tests (#1226) 2023-09-06 10:08:21 +00:00
Benoit Marty
3f8e7eaef8 Add missing tests. 2023-08-23 13:49:03 +02:00
Jorge Martin Espinosa
75137c1469 Fix detekt issues in develop (#1004)
Co-authored-by: Marco Romano <marcor@element.io>
2023-07-31 14:01:08 +02:00
ganfra
c6e023b053 Add consumeItemsUntilPredicate to check how it goes... 2023-07-26 13:07:11 +02:00