From 5f2ee2dc8ccdefef2496022382a82afccc96acba Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 27 Jan 2026 15:03:57 +0100 Subject: [PATCH] RoomListEvents -> RoomListEvent --- .../features/home/impl/HomeFlowNode.kt | 4 +- .../android/features/home/impl/HomeView.kt | 4 +- .../impl/components/RoomListContentView.kt | 22 +++++----- .../home/impl/components/RoomSummaryRow.kt | 10 ++--- .../home/impl/roomlist/RoomListContextMenu.kt | 26 ++++++------ .../roomlist/RoomListDeclineInviteMenu.kt | 14 +++---- .../{RoomListEvents.kt => RoomListEvent.kt} | 36 ++++++++-------- .../home/impl/roomlist/RoomListPresenter.kt | 36 ++++++++-------- .../home/impl/roomlist/RoomListState.kt | 2 +- .../impl/roomlist/RoomListStateProvider.kt | 2 +- .../home/impl/search/RoomListSearchView.kt | 6 +-- .../impl/roomlist/RoomListContextMenuTest.kt | 32 +++++++------- .../roomlist/RoomListDeclineInviteMenuTest.kt | 20 ++++----- .../impl/roomlist/RoomListPresenterTest.kt | 42 +++++++++---------- .../home/impl/roomlist/RoomListViewTest.kt | 38 ++++++++--------- 15 files changed, 147 insertions(+), 147 deletions(-) rename features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/{RoomListEvents.kt => RoomListEvent.kt} (70%) diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeFlowNode.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeFlowNode.kt index 0e92761bd5..81e7969080 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeFlowNode.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeFlowNode.kt @@ -34,7 +34,7 @@ import io.element.android.annotations.ContributesNode import io.element.android.features.home.api.HomeEntryPoint import io.element.android.features.home.impl.components.RoomListMenuAction import io.element.android.features.home.impl.model.RoomListRoomSummary -import io.element.android.features.home.impl.roomlist.RoomListEvents +import io.element.android.features.home.impl.roomlist.RoomListEvent import io.element.android.features.invite.api.InviteData import io.element.android.features.invite.api.acceptdecline.AcceptDeclineInviteView import io.element.android.features.invite.api.declineandblock.DeclineInviteAndBlockEntryPoint @@ -159,7 +159,7 @@ class HomeFlowNode( } private fun onNewOwnersSelected(roomId: RoomId) { - stateFlow.value.roomListState.eventSink(RoomListEvents.LeaveRoom(roomId, needsConfirmation = false)) + stateFlow.value.roomListState.eventSink(RoomListEvent.LeaveRoom(roomId, needsConfirmation = false)) } private fun rootNode(buildContext: BuildContext): Node { diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt index 83efc39f82..7d210c3447 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt @@ -47,7 +47,7 @@ import io.element.android.features.home.impl.components.RoomListMenuAction import io.element.android.features.home.impl.model.RoomListRoomSummary import io.element.android.features.home.impl.roomlist.RoomListContextMenu import io.element.android.features.home.impl.roomlist.RoomListDeclineInviteMenu -import io.element.android.features.home.impl.roomlist.RoomListEvents +import io.element.android.features.home.impl.roomlist.RoomListEvent import io.element.android.features.home.impl.roomlist.RoomListState import io.element.android.features.home.impl.search.RoomListSearchView import io.element.android.features.home.impl.spaces.HomeSpacesView @@ -172,7 +172,7 @@ private fun HomeScaffold( currentUserAndNeighbors = state.currentUserAndNeighbors, showAvatarIndicator = state.showAvatarIndicator, areSearchResultsDisplayed = roomListState.searchState.isSearchActive, - onToggleSearch = { roomListState.eventSink(RoomListEvents.ToggleSearchResults) }, + onToggleSearch = { roomListState.eventSink(RoomListEvent.ToggleSearchResults) }, onMenuActionClick = onMenuActionClick, onOpenSettings = onOpenSettings, onAccountSwitch = { diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomListContentView.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomListContentView.kt index 364fe596f8..98874ff773 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomListContentView.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomListContentView.kt @@ -47,7 +47,7 @@ import io.element.android.features.home.impl.model.RoomListRoomSummary import io.element.android.features.home.impl.model.RoomSummaryDisplayType import io.element.android.features.home.impl.roomlist.RoomListContentState import io.element.android.features.home.impl.roomlist.RoomListContentStateProvider -import io.element.android.features.home.impl.roomlist.RoomListEvents +import io.element.android.features.home.impl.roomlist.RoomListEvent import io.element.android.features.home.impl.roomlist.SecurityBannerState import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight @@ -64,7 +64,7 @@ fun RoomListContentView( filtersState: RoomListFiltersState, lazyListState: LazyListState, hideInvitesAvatars: Boolean, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onSetUpRecoveryClick: () -> Unit, onConfirmRecoveryKeyClick: () -> Unit, onRoomClick: (RoomListRoomSummary) -> Unit, @@ -131,7 +131,7 @@ private fun SkeletonView( @Composable private fun EmptyView( state: RoomListContentState.Empty, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onSetUpRecoveryClick: () -> Unit, onConfirmRecoveryKeyClick: () -> Unit, onCreateRoomClick: () -> Unit, @@ -155,13 +155,13 @@ private fun EmptyView( SecurityBannerState.SetUpRecovery -> { SetUpRecoveryKeyBanner( onContinueClick = onSetUpRecoveryClick, - onDismissClick = { eventSink(RoomListEvents.DismissBanner) }, + onDismissClick = { eventSink(RoomListEvent.DismissBanner) }, ) } SecurityBannerState.RecoveryKeyConfirmation -> { ConfirmRecoveryKeyBanner( onContinueClick = onConfirmRecoveryKeyClick, - onDismissClick = { eventSink(RoomListEvents.DismissBanner) }, + onDismissClick = { eventSink(RoomListEvent.DismissBanner) }, ) } SecurityBannerState.None -> Unit @@ -175,7 +175,7 @@ private fun RoomsView( state: RoomListContentState.Rooms, hideInvitesAvatars: Boolean, filtersState: RoomListFiltersState, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onSetUpRecoveryClick: () -> Unit, onConfirmRecoveryKeyClick: () -> Unit, onRoomClick: (RoomListRoomSummary) -> Unit, @@ -207,7 +207,7 @@ private fun RoomsView( private fun RoomsViewList( state: RoomListContentState.Rooms, hideInvitesAvatars: Boolean, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onSetUpRecoveryClick: () -> Unit, onConfirmRecoveryKeyClick: () -> Unit, onRoomClick: (RoomListRoomSummary) -> Unit, @@ -225,7 +225,7 @@ private fun RoomsViewList( } val updatedEventSink by rememberUpdatedState(newValue = eventSink) LaunchedEffect(visibleRange) { - updatedEventSink(RoomListEvents.UpdateVisibleRange(visibleRange)) + updatedEventSink(RoomListEvent.UpdateVisibleRange(visibleRange)) } LazyColumn( state = lazyListState, @@ -237,7 +237,7 @@ private fun RoomsViewList( item { SetUpRecoveryKeyBanner( onContinueClick = onSetUpRecoveryClick, - onDismissClick = { updatedEventSink(RoomListEvents.DismissBanner) }, + onDismissClick = { updatedEventSink(RoomListEvent.DismissBanner) }, ) } } @@ -245,7 +245,7 @@ private fun RoomsViewList( item { ConfirmRecoveryKeyBanner( onContinueClick = onConfirmRecoveryKeyClick, - onDismissClick = { updatedEventSink(RoomListEvents.DismissBanner) }, + onDismissClick = { updatedEventSink(RoomListEvent.DismissBanner) }, ) } } @@ -260,7 +260,7 @@ private fun RoomsViewList( } else if (state.showNewNotificationSoundBanner) { item { NewNotificationSoundBanner( - onDismissClick = { updatedEventSink(RoomListEvents.DismissNewNotificationSoundBanner) }, + onDismissClick = { updatedEventSink(RoomListEvent.DismissNewNotificationSoundBanner) }, ) } } diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomSummaryRow.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomSummaryRow.kt index d8426b5321..e2598a9e1c 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomSummaryRow.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/RoomSummaryRow.kt @@ -44,7 +44,7 @@ import io.element.android.features.home.impl.model.LatestEvent import io.element.android.features.home.impl.model.RoomListRoomSummary import io.element.android.features.home.impl.model.RoomListRoomSummaryProvider import io.element.android.features.home.impl.model.RoomSummaryDisplayType -import io.element.android.features.home.impl.roomlist.RoomListEvents +import io.element.android.features.home.impl.roomlist.RoomListEvent import io.element.android.libraries.core.extensions.orEmpty import io.element.android.libraries.core.extensions.toSafeLength import io.element.android.libraries.designsystem.atomic.atoms.UnreadIndicatorAtom @@ -74,7 +74,7 @@ internal fun RoomSummaryRow( hideInviteAvatars: Boolean, isInviteSeen: Boolean, onClick: (RoomListRoomSummary) -> Unit, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, modifier: Modifier = Modifier, ) { Box(modifier = modifier) { @@ -104,10 +104,10 @@ internal fun RoomSummaryRow( Spacer(modifier = Modifier.height(12.dp)) InviteButtonsRowMolecule( onAcceptClick = { - eventSink(RoomListEvents.AcceptInvite(room)) + eventSink(RoomListEvent.AcceptInvite(room)) }, onDeclineClick = { - eventSink(RoomListEvents.ShowDeclineInviteMenu(room)) + eventSink(RoomListEvent.ShowDeclineInviteMenu(room)) } ) } @@ -117,7 +117,7 @@ internal fun RoomSummaryRow( room = room, onClick = onClick, onLongClick = { - eventSink(RoomListEvents.ShowContextMenu(room)) + eventSink(RoomListEvent.ShowContextMenu(room)) }, ) { NameAndTimestampRow( diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenu.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenu.kt index 4a00aa1dc0..30e3aaf0b7 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenu.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenu.kt @@ -37,41 +37,41 @@ import io.element.android.libraries.ui.strings.CommonStrings fun RoomListContextMenu( contextMenu: RoomListState.ContextMenu.Shown, canReportRoom: Boolean, - eventSink: (RoomListEvents.ContextMenuEvents) -> Unit, + eventSink: (RoomListEvent.ContextMenuEvent) -> Unit, onRoomSettingsClick: (roomId: RoomId) -> Unit, onReportRoomClick: (roomId: RoomId) -> Unit ) { ModalBottomSheet( - onDismissRequest = { eventSink(RoomListEvents.HideContextMenu) }, + onDismissRequest = { eventSink(RoomListEvent.HideContextMenu) }, ) { RoomListModalBottomSheetContent( contextMenu = contextMenu, canReportRoom = canReportRoom, onRoomMarkReadClick = { - eventSink(RoomListEvents.HideContextMenu) - eventSink(RoomListEvents.MarkAsRead(contextMenu.roomId)) + eventSink(RoomListEvent.HideContextMenu) + eventSink(RoomListEvent.MarkAsRead(contextMenu.roomId)) }, onRoomMarkUnreadClick = { - eventSink(RoomListEvents.HideContextMenu) - eventSink(RoomListEvents.MarkAsUnread(contextMenu.roomId)) + eventSink(RoomListEvent.HideContextMenu) + eventSink(RoomListEvent.MarkAsUnread(contextMenu.roomId)) }, onRoomSettingsClick = { - eventSink(RoomListEvents.HideContextMenu) + eventSink(RoomListEvent.HideContextMenu) onRoomSettingsClick(contextMenu.roomId) }, onLeaveRoomClick = { - eventSink(RoomListEvents.HideContextMenu) - eventSink(RoomListEvents.LeaveRoom(contextMenu.roomId, needsConfirmation = true)) + eventSink(RoomListEvent.HideContextMenu) + eventSink(RoomListEvent.LeaveRoom(contextMenu.roomId, needsConfirmation = true)) }, onFavoriteChange = { isFavorite -> - eventSink(RoomListEvents.SetRoomIsFavorite(contextMenu.roomId, isFavorite)) + eventSink(RoomListEvent.SetRoomIsFavorite(contextMenu.roomId, isFavorite)) }, onClearCacheRoomClick = { - eventSink(RoomListEvents.HideContextMenu) - eventSink(RoomListEvents.ClearCacheOfRoom(contextMenu.roomId)) + eventSink(RoomListEvent.HideContextMenu) + eventSink(RoomListEvent.ClearCacheOfRoom(contextMenu.roomId)) }, onReportRoomClick = { - eventSink(RoomListEvents.HideContextMenu) + eventSink(RoomListEvent.HideContextMenu) onReportRoomClick(contextMenu.roomId) }, ) diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenu.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenu.kt index 4c91e14dcd..523e677a57 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenu.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenu.kt @@ -38,27 +38,27 @@ fun RoomListDeclineInviteMenu( menu: RoomListState.DeclineInviteMenu.Shown, canReportRoom: Boolean, onDeclineAndBlockClick: (RoomListRoomSummary) -> Unit, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, ) { ModalBottomSheet( - onDismissRequest = { eventSink(RoomListEvents.HideDeclineInviteMenu) }, + onDismissRequest = { eventSink(RoomListEvent.HideDeclineInviteMenu) }, ) { RoomListDeclineInviteMenuContent( roomName = menu.roomSummary.name ?: menu.roomSummary.roomId.value, onDeclineClick = { - eventSink(RoomListEvents.HideDeclineInviteMenu) - eventSink(RoomListEvents.DeclineInvite(menu.roomSummary, false)) + eventSink(RoomListEvent.HideDeclineInviteMenu) + eventSink(RoomListEvent.DeclineInvite(menu.roomSummary, false)) }, onDeclineAndBlockClick = { - eventSink(RoomListEvents.HideDeclineInviteMenu) + eventSink(RoomListEvent.HideDeclineInviteMenu) if (canReportRoom) { onDeclineAndBlockClick(menu.roomSummary) } else { - eventSink(RoomListEvents.DeclineInvite(menu.roomSummary, true)) + eventSink(RoomListEvent.DeclineInvite(menu.roomSummary, true)) } }, onCancelClick = { - eventSink(RoomListEvents.HideDeclineInviteMenu) + eventSink(RoomListEvent.HideDeclineInviteMenu) } ) } diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvents.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvent.kt similarity index 70% rename from features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvents.kt rename to features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvent.kt index 36953224c3..3e82ff9809 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvents.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListEvent.kt @@ -11,24 +11,24 @@ package io.element.android.features.home.impl.roomlist import io.element.android.features.home.impl.model.RoomListRoomSummary import io.element.android.libraries.matrix.api.core.RoomId -sealed interface RoomListEvents { - data class UpdateVisibleRange(val range: IntRange) : RoomListEvents - data object DismissRequestVerificationPrompt : RoomListEvents - data object DismissBanner : RoomListEvents - data object DismissNewNotificationSoundBanner : RoomListEvents - data object ToggleSearchResults : RoomListEvents - data class ShowContextMenu(val roomSummary: RoomListRoomSummary) : RoomListEvents +sealed interface RoomListEvent { + data class UpdateVisibleRange(val range: IntRange) : RoomListEvent + data object DismissRequestVerificationPrompt : RoomListEvent + data object DismissBanner : RoomListEvent + data object DismissNewNotificationSoundBanner : RoomListEvent + data object ToggleSearchResults : RoomListEvent + data class ShowContextMenu(val roomSummary: RoomListRoomSummary) : RoomListEvent - data class AcceptInvite(val roomSummary: RoomListRoomSummary) : RoomListEvents - data class DeclineInvite(val roomSummary: RoomListRoomSummary, val blockUser: Boolean) : RoomListEvents - data class ShowDeclineInviteMenu(val roomSummary: RoomListRoomSummary) : RoomListEvents - data object HideDeclineInviteMenu : RoomListEvents + data class AcceptInvite(val roomSummary: RoomListRoomSummary) : RoomListEvent + data class DeclineInvite(val roomSummary: RoomListRoomSummary, val blockUser: Boolean) : RoomListEvent + data class ShowDeclineInviteMenu(val roomSummary: RoomListRoomSummary) : RoomListEvent + data object HideDeclineInviteMenu : RoomListEvent - sealed interface ContextMenuEvents : RoomListEvents - data object HideContextMenu : ContextMenuEvents - data class LeaveRoom(val roomId: RoomId, val needsConfirmation: Boolean) : ContextMenuEvents - data class MarkAsRead(val roomId: RoomId) : ContextMenuEvents - data class MarkAsUnread(val roomId: RoomId) : ContextMenuEvents - data class SetRoomIsFavorite(val roomId: RoomId, val isFavorite: Boolean) : ContextMenuEvents - data class ClearCacheOfRoom(val roomId: RoomId) : ContextMenuEvents + sealed interface ContextMenuEvent : RoomListEvent + data object HideContextMenu : ContextMenuEvent + data class LeaveRoom(val roomId: RoomId, val needsConfirmation: Boolean) : ContextMenuEvent + data class MarkAsRead(val roomId: RoomId) : ContextMenuEvent + data class MarkAsUnread(val roomId: RoomId) : ContextMenuEvent + data class SetRoomIsFavorite(val roomId: RoomId, val isFavorite: Boolean) : ContextMenuEvent + data class ClearCacheOfRoom(val roomId: RoomId) : ContextMenuEvent } diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenter.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenter.kt index 5fc07ab21c..a5e68ab3cf 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenter.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenter.kt @@ -116,42 +116,42 @@ class RoomListPresenter( val contextMenu = remember { mutableStateOf(RoomListState.ContextMenu.Hidden) } val declineInviteMenu = remember { mutableStateOf(RoomListState.DeclineInviteMenu.Hidden) } - fun handleEvent(event: RoomListEvents) { + fun handleEvent(event: RoomListEvent) { when (event) { - is RoomListEvents.UpdateVisibleRange -> coroutineScope.launch { + is RoomListEvent.UpdateVisibleRange -> coroutineScope.launch { updateVisibleRange(event.range) } - RoomListEvents.DismissRequestVerificationPrompt -> securityBannerDismissed = true - RoomListEvents.DismissBanner -> securityBannerDismissed = true - RoomListEvents.DismissNewNotificationSoundBanner -> coroutineScope.launch { + RoomListEvent.DismissRequestVerificationPrompt -> securityBannerDismissed = true + RoomListEvent.DismissBanner -> securityBannerDismissed = true + RoomListEvent.DismissNewNotificationSoundBanner -> coroutineScope.launch { announcementService.onAnnouncementDismissed(Announcement.NewNotificationSound) } - RoomListEvents.ToggleSearchResults -> searchState.eventSink(RoomListSearchEvents.ToggleSearchVisibility) - is RoomListEvents.ShowContextMenu -> { + RoomListEvent.ToggleSearchResults -> searchState.eventSink(RoomListSearchEvents.ToggleSearchVisibility) + is RoomListEvent.ShowContextMenu -> { coroutineScope.showContextMenu(event, contextMenu) } - is RoomListEvents.HideContextMenu -> { + is RoomListEvent.HideContextMenu -> { contextMenu.value = RoomListState.ContextMenu.Hidden } - is RoomListEvents.LeaveRoom -> { + is RoomListEvent.LeaveRoom -> { leaveRoomState.eventSink(LeaveRoomEvent.LeaveRoom(event.roomId, needsConfirmation = event.needsConfirmation)) } - is RoomListEvents.SetRoomIsFavorite -> coroutineScope.setRoomIsFavorite(event.roomId, event.isFavorite) - is RoomListEvents.MarkAsRead -> coroutineScope.markAsRead(event.roomId) - is RoomListEvents.MarkAsUnread -> coroutineScope.markAsUnread(event.roomId) - is RoomListEvents.AcceptInvite -> { + is RoomListEvent.SetRoomIsFavorite -> coroutineScope.setRoomIsFavorite(event.roomId, event.isFavorite) + is RoomListEvent.MarkAsRead -> coroutineScope.markAsRead(event.roomId) + is RoomListEvent.MarkAsUnread -> coroutineScope.markAsUnread(event.roomId) + is RoomListEvent.AcceptInvite -> { acceptDeclineInviteState.eventSink( AcceptInvite(event.roomSummary.toInviteData()) ) } - is RoomListEvents.DeclineInvite -> { + is RoomListEvent.DeclineInvite -> { acceptDeclineInviteState.eventSink( DeclineInvite(event.roomSummary.toInviteData(), blockUser = event.blockUser, shouldConfirm = false) ) } - is RoomListEvents.ShowDeclineInviteMenu -> declineInviteMenu.value = RoomListState.DeclineInviteMenu.Shown(event.roomSummary) - RoomListEvents.HideDeclineInviteMenu -> declineInviteMenu.value = RoomListState.DeclineInviteMenu.Hidden - is RoomListEvents.ClearCacheOfRoom -> coroutineScope.clearCacheOfRoom(event.roomId) + is RoomListEvent.ShowDeclineInviteMenu -> declineInviteMenu.value = RoomListState.DeclineInviteMenu.Shown(event.roomSummary) + RoomListEvent.HideDeclineInviteMenu -> declineInviteMenu.value = RoomListState.DeclineInviteMenu.Hidden + is RoomListEvent.ClearCacheOfRoom -> coroutineScope.clearCacheOfRoom(event.roomId) } } @@ -253,7 +253,7 @@ class RoomListPresenter( } @OptIn(ExperimentalCoroutinesApi::class) - private fun CoroutineScope.showContextMenu(event: RoomListEvents.ShowContextMenu, contextMenuState: MutableState) = launch { + private fun CoroutineScope.showContextMenu(event: RoomListEvent.ShowContextMenu, contextMenuState: MutableState) = launch { val initialState = RoomListState.ContextMenu.Shown( roomId = event.roomSummary.roomId, roomName = event.roomSummary.name, diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListState.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListState.kt index 2b5ca0391e..b19344ba1d 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListState.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListState.kt @@ -30,7 +30,7 @@ data class RoomListState( val acceptDeclineInviteState: AcceptDeclineInviteState, val hideInvitesAvatars: Boolean, val canReportRoom: Boolean, - val eventSink: (RoomListEvents) -> Unit, + val eventSink: (RoomListEvent) -> Unit, ) { val displayFilters = contentState is RoomListContentState.Rooms diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListStateProvider.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListStateProvider.kt index 7f58e05c7e..1b61ba20c7 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListStateProvider.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/roomlist/RoomListStateProvider.kt @@ -56,7 +56,7 @@ internal fun aRoomListState( acceptDeclineInviteState: AcceptDeclineInviteState = anAcceptDeclineInviteState(), hideInvitesAvatars: Boolean = false, canReportRoom: Boolean = true, - eventSink: (RoomListEvents) -> Unit = {} + eventSink: (RoomListEvent) -> Unit = {} ) = RoomListState( contextMenu = contextMenu, declineInviteMenu = declineInviteMenu, diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/search/RoomListSearchView.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/search/RoomListSearchView.kt index f013b602dd..3df53bc35d 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/search/RoomListSearchView.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/search/RoomListSearchView.kt @@ -38,7 +38,7 @@ import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.features.home.impl.components.RoomSummaryRow import io.element.android.features.home.impl.contentType import io.element.android.features.home.impl.model.RoomListRoomSummary -import io.element.android.features.home.impl.roomlist.RoomListEvents +import io.element.android.features.home.impl.roomlist.RoomListEvent import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight @@ -54,7 +54,7 @@ import io.element.android.libraries.ui.strings.CommonStrings internal fun RoomListSearchView( state: RoomListSearchState, hideInvitesAvatars: Boolean, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onRoomClick: (RoomId) -> Unit, modifier: Modifier = Modifier, ) { @@ -83,7 +83,7 @@ internal fun RoomListSearchView( private fun RoomListSearchContent( state: RoomListSearchState, hideInvitesAvatars: Boolean, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onRoomClick: (RoomId) -> Unit, ) { val borderColor = MaterialTheme.colorScheme.tertiary diff --git a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenuTest.kt b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenuTest.kt index b692d49d1e..6be5fe4c16 100644 --- a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenuTest.kt +++ b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListContextMenuTest.kt @@ -30,7 +30,7 @@ class RoomListContextMenuTest { @Test fun `clicking on Mark as read generates expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown(hasNewContent = true) rule.setRoomListContextMenu( contextMenu = contextMenu, @@ -39,15 +39,15 @@ class RoomListContextMenuTest { rule.clickOn(R.string.screen_roomlist_mark_as_read) eventsRecorder.assertList( listOf( - RoomListEvents.HideContextMenu, - RoomListEvents.MarkAsRead(contextMenu.roomId), + RoomListEvent.HideContextMenu, + RoomListEvent.MarkAsRead(contextMenu.roomId), ) ) } @Test fun `clicking on Mark as unread generates expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown(hasNewContent = false) rule.setRoomListContextMenu( contextMenu = contextMenu, @@ -56,15 +56,15 @@ class RoomListContextMenuTest { rule.clickOn(R.string.screen_roomlist_mark_as_unread) eventsRecorder.assertList( listOf( - RoomListEvents.HideContextMenu, - RoomListEvents.MarkAsUnread(contextMenu.roomId), + RoomListEvent.HideContextMenu, + RoomListEvent.MarkAsUnread(contextMenu.roomId), ) ) } @Test fun `clicking on Leave room generates expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown(isDm = false) rule.setRoomListContextMenu( contextMenu = contextMenu, @@ -73,15 +73,15 @@ class RoomListContextMenuTest { rule.clickOn(CommonStrings.action_leave_room) eventsRecorder.assertList( listOf( - RoomListEvents.HideContextMenu, - RoomListEvents.LeaveRoom(contextMenu.roomId, needsConfirmation = true), + RoomListEvent.HideContextMenu, + RoomListEvent.LeaveRoom(contextMenu.roomId, needsConfirmation = true), ) ) } @Test fun `clicking on Report room invokes the expected callback and generates expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown() val callback = EnsureCalledOnceWithParam(contextMenu.roomId, Unit) rule.setRoomListContextMenu( @@ -92,13 +92,13 @@ class RoomListContextMenuTest { onReportRoomClick = callback, ) rule.clickOn(CommonStrings.action_report_room) - eventsRecorder.assertSingle(RoomListEvents.HideContextMenu) + eventsRecorder.assertSingle(RoomListEvent.HideContextMenu) callback.assertSuccess() } @Test fun `clicking on Settings invokes the expected callback and generates expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown() val callback = EnsureCalledOnceWithParam(contextMenu.roomId, Unit) rule.setRoomListContextMenu( @@ -107,13 +107,13 @@ class RoomListContextMenuTest { onRoomSettingsClick = callback, ) rule.clickOn(CommonStrings.common_settings) - eventsRecorder.assertSingle(RoomListEvents.HideContextMenu) + eventsRecorder.assertSingle(RoomListEvent.HideContextMenu) callback.assertSuccess() } @Test fun `clicking on Favourites generates expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val contextMenu = aContextMenuShown(isDm = false, isFavorite = false) val callback = EnsureNeverCalledWithParam() rule.setRoomListContextMenu( @@ -124,7 +124,7 @@ class RoomListContextMenuTest { rule.clickOn(CommonStrings.common_favourite) eventsRecorder.assertList( listOf( - RoomListEvents.SetRoomIsFavorite(contextMenu.roomId, true), + RoomListEvent.SetRoomIsFavorite(contextMenu.roomId, true), ) ) } @@ -132,7 +132,7 @@ class RoomListContextMenuTest { private fun AndroidComposeTestRule<*, *>.setRoomListContextMenu( contextMenu: RoomListState.ContextMenu.Shown, canReportRoom: Boolean = false, - eventSink: (RoomListEvents) -> Unit, + eventSink: (RoomListEvent) -> Unit, onRoomSettingsClick: (RoomId) -> Unit = EnsureNeverCalledWithParam(), onReportRoomClick: (RoomId) -> Unit = EnsureNeverCalledWithParam(), ) { diff --git a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenuTest.kt b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenuTest.kt index 0803993a0b..d7f509fda4 100644 --- a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenuTest.kt +++ b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListDeclineInviteMenuTest.kt @@ -28,7 +28,7 @@ class RoomListDeclineInviteMenuTest { @Test fun `clicking on decline emits the expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val menu = RoomListState.DeclineInviteMenu.Shown(roomSummary = aRoomListRoomSummary()) rule.setSafeContent { RoomListDeclineInviteMenu( @@ -41,15 +41,15 @@ class RoomListDeclineInviteMenuTest { rule.clickOn(CommonStrings.action_decline) eventsRecorder.assertList( listOf( - RoomListEvents.HideDeclineInviteMenu, - RoomListEvents.DeclineInvite(menu.roomSummary, blockUser = false), + RoomListEvent.HideDeclineInviteMenu, + RoomListEvent.DeclineInvite(menu.roomSummary, blockUser = false), ) ) } @Test fun `clicking on decline and block when canReportRoom=true, it emits the expected Events and callback`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val menu = RoomListState.DeclineInviteMenu.Shown(roomSummary = aRoomListRoomSummary()) rule.setSafeContent { RoomListDeclineInviteMenu( @@ -60,13 +60,13 @@ class RoomListDeclineInviteMenuTest { ) } rule.clickOn(CommonStrings.action_decline_and_block) - val expectedEvents = listOf(RoomListEvents.HideDeclineInviteMenu) + val expectedEvents = listOf(RoomListEvent.HideDeclineInviteMenu) eventsRecorder.assertList(expectedEvents) } @Test fun `clicking on decline and block when canReportRoom=false, it emits the expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val menu = RoomListState.DeclineInviteMenu.Shown(roomSummary = aRoomListRoomSummary()) rule.setSafeContent { RoomListDeclineInviteMenu( @@ -78,15 +78,15 @@ class RoomListDeclineInviteMenuTest { } rule.clickOn(CommonStrings.action_decline_and_block) val expectedEvents = listOf( - RoomListEvents.HideDeclineInviteMenu, - RoomListEvents.DeclineInvite(menu.roomSummary, blockUser = true), + RoomListEvent.HideDeclineInviteMenu, + RoomListEvent.DeclineInvite(menu.roomSummary, blockUser = true), ) eventsRecorder.assertList(expectedEvents) } @Test fun `clicking on cancel emits the expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val menu = RoomListState.DeclineInviteMenu.Shown(roomSummary = aRoomListRoomSummary()) rule.setSafeContent { RoomListDeclineInviteMenu( @@ -97,6 +97,6 @@ class RoomListDeclineInviteMenuTest { ) } rule.clickOn(CommonStrings.action_cancel) - eventsRecorder.assertList(listOf(RoomListEvents.HideDeclineInviteMenu)) + eventsRecorder.assertList(listOf(RoomListEvent.HideDeclineInviteMenu)) } } diff --git a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenterTest.kt b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenterTest.kt index a97c189947..9bb9d64def 100644 --- a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenterTest.kt +++ b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListPresenterTest.kt @@ -149,7 +149,7 @@ class RoomListPresenterTest { }.last() val eventSink = eventWithContentAsRooms.eventSink assertThat(eventWithContentAsRooms.contentAsRooms().securityBannerState).isEqualTo(SecurityBannerState.RecoveryKeyConfirmation) - eventSink(RoomListEvents.DismissRequestVerificationPrompt) + eventSink(RoomListEvent.DismissRequestVerificationPrompt) assertThat(awaitItem().contentAsRooms().securityBannerState).isEqualTo(SecurityBannerState.None) } } @@ -194,7 +194,7 @@ class RoomListPresenterTest { assertThat(awaitItem().contentAsRooms().securityBannerState).isEqualTo(SecurityBannerState.None) encryptionService.emitRecoveryState(RecoveryState.DISABLED) assertThat(awaitItem().contentAsRooms().securityBannerState).isEqualTo(SecurityBannerState.SetUpRecovery) - nextState.eventSink(RoomListEvents.DismissBanner) + nextState.eventSink(RoomListEvent.DismissBanner) val finalState = awaitItem() assertThat(finalState.contentAsRooms().securityBannerState).isEqualTo(SecurityBannerState.None) } @@ -212,7 +212,7 @@ class RoomListPresenterTest { }.test { val initialState = awaitItem() val summary = createRoomListRoomSummary() - initialState.eventSink(RoomListEvents.ShowContextMenu(summary)) + initialState.eventSink(RoomListEvent.ShowContextMenu(summary)) awaitItem().also { state -> assertThat(state.contextMenu) @@ -257,7 +257,7 @@ class RoomListPresenterTest { presenter.test { val initialState = awaitItem() val summary = createRoomListRoomSummary() - initialState.eventSink(RoomListEvents.ShowContextMenu(summary)) + initialState.eventSink(RoomListEvent.ShowContextMenu(summary)) awaitItem().also { state -> assertThat(state.contextMenu) .isEqualTo( @@ -287,7 +287,7 @@ class RoomListPresenterTest { }.test { val initialState = awaitItem() val summary = createRoomListRoomSummary() - initialState.eventSink(RoomListEvents.ShowContextMenu(summary)) + initialState.eventSink(RoomListEvent.ShowContextMenu(summary)) val shownState = awaitItem() assertThat(shownState.contextMenu) @@ -302,7 +302,7 @@ class RoomListPresenterTest { ) ) - shownState.eventSink(RoomListEvents.HideContextMenu) + shownState.eventSink(RoomListEvent.HideContextMenu) val hiddenState = awaitItem() assertThat(hiddenState.contextMenu).isEqualTo(RoomListState.ContextMenu.Hidden) @@ -319,7 +319,7 @@ class RoomListPresenterTest { presenter.present() }.test { val initialState = awaitItem() - initialState.eventSink(RoomListEvents.LeaveRoom(A_ROOM_ID, needsConfirmation = true)) + initialState.eventSink(RoomListEvent.LeaveRoom(A_ROOM_ID, needsConfirmation = true)) leaveRoomEventsRecorder.assertSingle(LeaveRoomEvent.LeaveRoom(A_ROOM_ID, needsConfirmation = true)) cancelAndIgnoreRemainingEvents() } @@ -341,11 +341,11 @@ class RoomListPresenterTest { }.test { val initialState = awaitItem() eventRecorder.assertEmpty() - initialState.eventSink(RoomListEvents.ToggleSearchResults) + initialState.eventSink(RoomListEvent.ToggleSearchResults) eventRecorder.assertSingle( RoomListSearchEvents.ToggleSearchVisibility ) - initialState.eventSink(RoomListEvents.ToggleSearchResults) + initialState.eventSink(RoomListEvent.ToggleSearchResults) eventRecorder.assertList( listOf( RoomListSearchEvents.ToggleSearchVisibility, @@ -398,9 +398,9 @@ class RoomListPresenterTest { presenter.present() }.test { val initialState = awaitItem() - initialState.eventSink(RoomListEvents.SetRoomIsFavorite(A_ROOM_ID, true)) + initialState.eventSink(RoomListEvent.SetRoomIsFavorite(A_ROOM_ID, true)) setIsFavoriteResult.assertions().isCalledOnce().with(value(true)) - initialState.eventSink(RoomListEvents.SetRoomIsFavorite(A_ROOM_ID, false)) + initialState.eventSink(RoomListEvent.SetRoomIsFavorite(A_ROOM_ID, false)) setIsFavoriteResult.assertions().isCalledExactly(2) .withSequence( listOf(value(true)), @@ -470,16 +470,16 @@ class RoomListPresenterTest { allRooms.forEach { assertThat(it.setUnreadFlagCalls).isEmpty() } - initialState.eventSink.invoke(RoomListEvents.MarkAsRead(A_ROOM_ID)) + initialState.eventSink.invoke(RoomListEvent.MarkAsRead(A_ROOM_ID)) markAsReadResult.assertions().isCalledOnce().with(value(ReceiptType.READ)) assertThat(room.setUnreadFlagCalls).isEqualTo(listOf(false)) clearMessagesForRoomLambda.assertions().isCalledOnce() .with(value(A_SESSION_ID), value(A_ROOM_ID)) - initialState.eventSink.invoke(RoomListEvents.MarkAsUnread(A_ROOM_ID_2)) + initialState.eventSink.invoke(RoomListEvent.MarkAsUnread(A_ROOM_ID_2)) assertThat(room2.setUnreadFlagCalls).isEqualTo(listOf(true)) // Test again with private read receipts sessionPreferencesStore.setSendPublicReadReceipts(false) - initialState.eventSink.invoke(RoomListEvents.MarkAsRead(A_ROOM_ID_3)) + initialState.eventSink.invoke(RoomListEvent.MarkAsRead(A_ROOM_ID_3)) markAsReadResult3.assertions().isCalledOnce().with(value(ReceiptType.READ_PRIVATE)) assertThat(room3.setUnreadFlagCalls).isEqualTo(listOf(false)) clearMessagesForRoomLambda.assertions().isCalledExactly(2) @@ -525,8 +525,8 @@ class RoomListPresenterTest { it.id == roomSummary.roomId.value } - state.eventSink(RoomListEvents.AcceptInvite(roomListRoomSummary)) - state.eventSink(RoomListEvents.DeclineInvite(roomListRoomSummary, blockUser = false)) + state.eventSink(RoomListEvent.AcceptInvite(roomListRoomSummary)) + state.eventSink(RoomListEvent.DeclineInvite(roomListRoomSummary, blockUser = false)) val inviteData = roomListRoomSummary.toInviteData() assert(eventSinkRecorder) @@ -559,9 +559,9 @@ class RoomListPresenterTest { it.contentState is RoomListContentState.Rooms }.last() - state.eventSink(RoomListEvents.UpdateVisibleRange(IntRange(0, 10))) + state.eventSink(RoomListEvent.UpdateVisibleRange(IntRange(0, 10))) // If called again, it will cancel the current one, which should not result in a test failure - state.eventSink(RoomListEvents.UpdateVisibleRange(IntRange(0, 11))) + state.eventSink(RoomListEvent.UpdateVisibleRange(IntRange(0, 11))) advanceTimeBy(1.seconds) subscribeToVisibleRoomsLambda.assertions().isCalledOnce() } @@ -588,12 +588,12 @@ class RoomListPresenterTest { it.contentState is RoomListContentState.Rooms }.last() - state.eventSink(RoomListEvents.UpdateVisibleRange(IntRange(0, 10))) + state.eventSink(RoomListEvent.UpdateVisibleRange(IntRange(0, 10))) advanceTimeBy(1.seconds) subscribeToVisibleRoomsLambda.assertions().isCalledOnce() // If called again, it will subscribe to the next items - state.eventSink(RoomListEvents.UpdateVisibleRange(IntRange(0, 11))) + state.eventSink(RoomListEvent.UpdateVisibleRange(IntRange(0, 11))) advanceTimeBy(1.seconds) subscribeToVisibleRoomsLambda.assertions().isCalledExactly(2) } @@ -626,7 +626,7 @@ class RoomListPresenterTest { assertThat(state.contentAsRooms().showNewNotificationSoundBanner).isFalse() announcementService.emitAnnouncementsToShow(listOf(Announcement.NewNotificationSound)) assertThat(awaitItem().contentAsRooms().showNewNotificationSoundBanner).isTrue() - state.eventSink(RoomListEvents.DismissNewNotificationSoundBanner) + state.eventSink(RoomListEvent.DismissNewNotificationSoundBanner) onAnnouncementDismissedResult.assertions().isCalledOnce() .with(value(Announcement.NewNotificationSound)) // Simulate service updating the value diff --git a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListViewTest.kt b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListViewTest.kt index a07093aa9f..587e4bc894 100644 --- a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListViewTest.kt +++ b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/roomlist/RoomListViewTest.kt @@ -46,7 +46,7 @@ class RoomListViewTest { @Config(qualifiers = "h1024dp") @Test fun `displaying the view automatically sends a couple of UpdateVisibleRangeEvents`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() rule.setRoomListView( state = aRoomListState( contentState = aRoomsContentState(securityBannerState = SecurityBannerState.RecoveryKeyConfirmation), @@ -56,15 +56,15 @@ class RoomListViewTest { eventsRecorder.assertList( listOf( - RoomListEvents.UpdateVisibleRange(IntRange.EMPTY), - RoomListEvents.UpdateVisibleRange(0..5), + RoomListEvent.UpdateVisibleRange(IntRange.EMPTY), + RoomListEvent.UpdateVisibleRange(0..5), ) ) } @Test fun `clicking on close recovery key banner emits the expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() rule.setRoomListView( state = aRoomListState( contentState = aRoomsContentState(securityBannerState = SecurityBannerState.RecoveryKeyConfirmation), @@ -77,12 +77,12 @@ class RoomListViewTest { val close = rule.activity.getString(CommonStrings.action_close) rule.onNodeWithContentDescription(close).performClick() - eventsRecorder.assertSingle(RoomListEvents.DismissBanner) + eventsRecorder.assertSingle(RoomListEvent.DismissBanner) } @Test fun `clicking on close setup key banner emits the expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() rule.setRoomListView( state = aRoomListState( contentState = aRoomsContentState(securityBannerState = SecurityBannerState.SetUpRecovery), @@ -95,12 +95,12 @@ class RoomListViewTest { val close = rule.activity.getString(CommonStrings.action_close) rule.onNodeWithContentDescription(close).performClick() - eventsRecorder.assertSingle(RoomListEvents.DismissBanner) + eventsRecorder.assertSingle(RoomListEvent.DismissBanner) } @Test fun `clicking on continue recovery key banner invokes the expected callback`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() ensureCalledOnce { callback -> rule.setRoomListView( state = aRoomListState( @@ -121,7 +121,7 @@ class RoomListViewTest { @Test fun `clicking on continue setup key banner invokes the expected callback`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() ensureCalledOnce { callback -> rule.setRoomListView( state = aRoomListState( @@ -139,7 +139,7 @@ class RoomListViewTest { @Test fun `clicking on start chat when the session has no room invokes the expected callback`() { - val eventsRecorder = EventsRecorder(expectEvents = false) + val eventsRecorder = EventsRecorder(expectEvents = false) ensureCalledOnce { callback -> rule.setRoomListView( state = aRoomListState( @@ -154,7 +154,7 @@ class RoomListViewTest { @Test fun `clicking on a room invokes the expected callback`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val state = aRoomListState( eventSink = eventsRecorder, ) @@ -178,7 +178,7 @@ class RoomListViewTest { @Test fun `clicking on a room twice invokes the expected callback only once`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val state = aRoomListState( eventSink = eventsRecorder, ) @@ -201,7 +201,7 @@ class RoomListViewTest { @Test fun `long clicking on a room emits the expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val state = aRoomListState( eventSink = eventsRecorder, ) @@ -215,12 +215,12 @@ class RoomListViewTest { eventsRecorder.clear() rule.onNodeWithText(room0.latestEvent.content().toString()).performTouchInput { longClick() } - eventsRecorder.assertSingle(RoomListEvents.ShowContextMenu(room0)) + eventsRecorder.assertSingle(RoomListEvent.ShowContextMenu(room0)) } @Test fun `clicking on a room setting invokes the expected callback and emits expected Event`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val state = aRoomListState( contextMenu = aContextMenuShown(), eventSink = eventsRecorder, @@ -238,12 +238,12 @@ class RoomListViewTest { rule.clickOn(CommonStrings.common_settings) } - eventsRecorder.assertSingle(RoomListEvents.HideContextMenu) + eventsRecorder.assertSingle(RoomListEvent.HideContextMenu) } @Test fun `clicking on accept and decline invite emits the expected Events`() { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() val state = aRoomListState( eventSink = eventsRecorder, ) @@ -259,8 +259,8 @@ class RoomListViewTest { rule.clickOn(CommonStrings.action_decline) eventsRecorder.assertList( listOf( - RoomListEvents.AcceptInvite(invitedRoom), - RoomListEvents.ShowDeclineInviteMenu(invitedRoom), + RoomListEvent.AcceptInvite(invitedRoom), + RoomListEvent.ShowDeclineInviteMenu(invitedRoom), ) ) }