ActionListEvents -> ActionListEvent

This commit is contained in:
Benoit Marty
2026-01-27 09:34:18 +01:00
parent 847766eb33
commit f7c7fdca9e
11 changed files with 77 additions and 77 deletions

View File

@@ -52,7 +52,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import io.element.android.compound.theme.ElementTheme
import io.element.android.features.messages.api.timeline.voicemessages.composer.VoiceMessageComposerEvent
import io.element.android.features.messages.impl.actionlist.ActionListEvents
import io.element.android.features.messages.impl.actionlist.ActionListEvent
import io.element.android.features.messages.impl.actionlist.ActionListView
import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction
import io.element.android.features.messages.impl.crypto.historyvisible.HistoryVisibleStateView
@@ -169,7 +169,7 @@ fun MessagesView(
Timber.v("OnMessageLongClicked= ${event.id}")
hidingKeyboard {
state.actionListState.eventSink(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = event,
userEventPermissions = state.userEventPermissions,
)

View File

@@ -11,10 +11,10 @@ package io.element.android.features.messages.impl.actionlist
import io.element.android.features.messages.impl.UserEventPermissions
import io.element.android.features.messages.impl.timeline.model.TimelineItem
sealed interface ActionListEvents {
data object Clear : ActionListEvents
sealed interface ActionListEvent {
data object Clear : ActionListEvent
data class ComputeForMessage(
val event: TimelineItem.Event,
val userEventPermissions: UserEventPermissions,
) : ActionListEvents
) : ActionListEvent
}

View File

@@ -107,10 +107,10 @@ class DefaultActionListPresenter(
val isThreadsEnabled = featureFlagService.isFeatureEnabledFlow(FeatureFlags.Threads).collectAsState(false)
fun handleEvent(event: ActionListEvents) {
fun handleEvent(event: ActionListEvent) {
when (event) {
ActionListEvents.Clear -> target.value = ActionListState.Target.None
is ActionListEvents.ComputeForMessage -> localCoroutineScope.computeForMessage(
ActionListEvent.Clear -> target.value = ActionListState.Target.None
is ActionListEvent.ComputeForMessage -> localCoroutineScope.computeForMessage(
timelineItem = event.event,
usersEventPermissions = event.userEventPermissions,
isDeveloperModeEnabled = isDeveloperModeEnabled,

View File

@@ -16,7 +16,7 @@ import kotlinx.collections.immutable.ImmutableList
data class ActionListState(
val target: Target,
val eventSink: (ActionListEvents) -> Unit,
val eventSink: (ActionListEvent) -> Unit,
) {
@Immutable
sealed interface Target {

View File

@@ -192,7 +192,7 @@ open class ActionListStateProvider : PreviewParameterProvider<ActionListState> {
fun anActionListState(
target: ActionListState.Target = ActionListState.Target.None,
eventSink: (ActionListEvents) -> Unit = {},
eventSink: (ActionListEvent) -> Unit = {},
) = ActionListState(
target = target,
eventSink = eventSink

View File

@@ -118,7 +118,7 @@ fun ActionListView(
) {
if (targetItem == null) return
sheetState.hide(coroutineScope) {
state.eventSink(ActionListEvents.Clear)
state.eventSink(ActionListEvent.Clear)
onSelectAction(itemAction, targetItem)
}
}
@@ -126,7 +126,7 @@ fun ActionListView(
fun onEmojiReactionClick(emoji: String) {
if (targetItem == null) return
sheetState.hide(coroutineScope) {
state.eventSink(ActionListEvents.Clear)
state.eventSink(ActionListEvent.Clear)
onEmojiReactionClick(emoji, targetItem)
}
}
@@ -134,19 +134,19 @@ fun ActionListView(
fun onCustomReactionClick() {
if (targetItem == null) return
sheetState.hide(coroutineScope) {
state.eventSink(ActionListEvents.Clear)
state.eventSink(ActionListEvent.Clear)
onCustomReactionClick(targetItem)
}
}
fun onDismiss() {
state.eventSink(ActionListEvents.Clear)
state.eventSink(ActionListEvent.Clear)
}
fun onVerifiedUserSendFailureClick() {
if (targetItem == null) return
sheetState.hide(coroutineScope) {
state.eventSink(ActionListEvents.Clear)
state.eventSink(ActionListEvent.Clear)
onVerifiedUserSendFailureClick(targetItem)
}
}

View File

@@ -25,7 +25,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import im.vector.app.features.analytics.plan.Interaction
import io.element.android.compound.tokens.generated.CompoundIcons
import io.element.android.features.messages.impl.actionlist.ActionListEvents
import io.element.android.features.messages.impl.actionlist.ActionListEvent
import io.element.android.features.messages.impl.actionlist.ActionListView
import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction
import io.element.android.features.messages.impl.link.LinkEvents
@@ -175,7 +175,7 @@ private fun PinnedMessagesListLoaded(
) {
fun onActionSelected(timelineItemAction: TimelineItemAction, event: TimelineItem.Event) {
state.actionListState.eventSink(
ActionListEvents.Clear
ActionListEvent.Clear
)
state.eventSink(
PinnedMessagesListEvents.HandleAction(
@@ -187,7 +187,7 @@ private fun PinnedMessagesListLoaded(
fun onMessageLongClick(event: TimelineItem.Event) {
state.actionListState.eventSink(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = event,
userEventPermissions = state.userEventPermissions,
)

View File

@@ -13,7 +13,7 @@ package io.element.android.features.messages.impl
import androidx.lifecycle.Lifecycle
import com.google.common.truth.Truth.assertThat
import im.vector.app.features.analytics.plan.PinUnpinAction
import io.element.android.features.messages.impl.actionlist.ActionListEvents
import io.element.android.features.messages.impl.actionlist.ActionListEvent
import io.element.android.features.messages.impl.actionlist.ActionListState
import io.element.android.features.messages.impl.actionlist.anActionListState
import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction
@@ -1276,7 +1276,7 @@ class MessagesPresenterTest {
},
encryptionService: FakeEncryptionService = FakeEncryptionService(),
featureFlagService: FakeFeatureFlagService = FakeFeatureFlagService(),
actionListEventSink: (ActionListEvents) -> Unit = {},
actionListEventSink: (ActionListEvent) -> Unit = {},
addRecentEmoji: AddRecentEmoji = AddRecentEmoji { _ -> lambdaError() },
markAsFullyRead: MarkAsFullyRead = FakeMarkAsFullyRead(),
): MessagesPresenter {

View File

@@ -30,7 +30,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
import io.element.android.emojibasebindings.Emoji
import io.element.android.emojibasebindings.EmojibaseCategory
import io.element.android.emojibasebindings.EmojibaseStore
import io.element.android.features.messages.impl.actionlist.ActionListEvents
import io.element.android.features.messages.impl.actionlist.ActionListEvent
import io.element.android.features.messages.impl.actionlist.ActionListState
import io.element.android.features.messages.impl.actionlist.anActionListState
import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction
@@ -183,7 +183,7 @@ class MessagesViewTest {
userHasPermissionToSendReaction: Boolean = false,
userCanPinEvent: Boolean = false,
) {
val eventsRecorder = EventsRecorder<ActionListEvents>()
val eventsRecorder = EventsRecorder<ActionListEvent>()
val state = aMessagesState(
actionListState = anActionListState(
eventSink = eventsRecorder
@@ -206,7 +206,7 @@ class MessagesViewTest {
// Cannot perform click on "Text", it's not detected. Use tag instead
rule.onAllNodesWithTag(TestTags.messageBubble.value).onFirst().performTouchInput { longClick() }
eventsRecorder.assertSingle(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = timelineItem,
userEventPermissions = state.userEventPermissions,
)

View File

@@ -79,7 +79,7 @@ class ActionListPresenterTest {
val initialState = awaitItem()
val messageEvent = aMessageEvent(isMine = true, isEditable = false, content = TimelineItemRedactedContent)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -103,7 +103,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -121,7 +121,7 @@ class ActionListPresenterTest {
content = TimelineItemRedactedContent
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -145,7 +145,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -163,7 +163,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -193,7 +193,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -210,7 +210,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -240,7 +240,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -258,7 +258,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -287,7 +287,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -305,7 +305,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -336,7 +336,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -354,7 +354,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -385,7 +385,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -402,7 +402,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -433,7 +433,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -449,7 +449,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -480,7 +480,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -497,7 +497,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -527,7 +527,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -544,7 +544,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -571,7 +571,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -589,7 +589,7 @@ class ActionListPresenterTest {
content = aTimelineItemImageContent(),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -619,7 +619,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -639,7 +639,7 @@ class ActionListPresenterTest {
),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -671,7 +671,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -691,7 +691,7 @@ class ActionListPresenterTest {
),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -721,7 +721,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -738,7 +738,7 @@ class ActionListPresenterTest {
content = aTimelineItemStateEventContent(),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = stateEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -762,7 +762,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -779,7 +779,7 @@ class ActionListPresenterTest {
content = aTimelineItemStateEventContent(),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = stateEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -806,7 +806,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -836,7 +836,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -853,7 +853,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -883,7 +883,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -906,7 +906,7 @@ class ActionListPresenterTest {
content = TimelineItemTextContent(body = A_MESSAGE, htmlDocument = null, isEdited = false, formattedBody = A_MESSAGE)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -937,7 +937,7 @@ class ActionListPresenterTest {
recentEmojis = suggestedEmojis,
)
)
initialState.eventSink.invoke(ActionListEvents.Clear)
initialState.eventSink.invoke(ActionListEvent.Clear)
assertThat(awaitItem().target).isEqualTo(ActionListState.Target.None)
}
}
@@ -959,7 +959,7 @@ class ActionListPresenterTest {
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -973,7 +973,7 @@ class ActionListPresenterTest {
assertThat(awaitItem().target).isInstanceOf(ActionListState.Target.Success::class.java)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = redactedEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = false,
@@ -1005,7 +1005,7 @@ class ActionListPresenterTest {
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1047,7 +1047,7 @@ class ActionListPresenterTest {
content = aTimelineItemPollContent(answerItems = aPollAnswerItemList(hasVotes = false)),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1092,7 +1092,7 @@ class ActionListPresenterTest {
content = aTimelineItemPollContent(answerItems = aPollAnswerItemList(hasVotes = true)),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1136,7 +1136,7 @@ class ActionListPresenterTest {
content = aTimelineItemPollContent(isEnded = true),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1181,7 +1181,7 @@ class ActionListPresenterTest {
),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1224,7 +1224,7 @@ class ActionListPresenterTest {
content = TimelineItemRtcNotificationContent(),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1264,7 +1264,7 @@ class ActionListPresenterTest {
sendState = LocalEventSendState.Failed.VerifiedUserChangedIdentity(users = listOf(A_USER_ID)),
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(),
)
@@ -1296,7 +1296,7 @@ class ActionListPresenterTest {
threadInfo = TimelineItemThreadInfo.ThreadResponse(threadRootId = A_THREAD_ID)
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1350,7 +1350,7 @@ class ActionListPresenterTest {
assertThat(messageEvent.isRemote).isTrue()
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1405,7 +1405,7 @@ class ActionListPresenterTest {
assertThat(messageEvent.isRemote).isTrue()
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1460,7 +1460,7 @@ class ActionListPresenterTest {
assertThat(messageEvent.isRemote).isFalse()
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,
@@ -1513,7 +1513,7 @@ class ActionListPresenterTest {
)
initialState.eventSink.invoke(
ActionListEvents.ComputeForMessage(
ActionListEvent.ComputeForMessage(
event = messageEvent,
userEventPermissions = aUserEventPermissions(
canRedactOwn = true,

View File

@@ -17,7 +17,7 @@ import androidx.compose.ui.test.onFirst
import androidx.compose.ui.test.performClick
import androidx.compose.ui.test.performTouchInput
import androidx.test.ext.junit.runners.AndroidJUnit4
import io.element.android.features.messages.impl.actionlist.ActionListEvents
import io.element.android.features.messages.impl.actionlist.ActionListEvent
import io.element.android.features.messages.impl.actionlist.anActionListState
import io.element.android.features.messages.impl.timeline.aTimelineItemList
import io.element.android.features.messages.impl.timeline.model.TimelineItem
@@ -77,7 +77,7 @@ class PinnedMessagesListViewTest {
@Test
fun `long click on an event emits the expected event`() {
val eventsRecorder = EventsRecorder<ActionListEvents>(expectEvents = true)
val eventsRecorder = EventsRecorder<ActionListEvent>(expectEvents = true)
val content = aTimelineItemFileContent()
val state = aLoadedPinnedMessagesListState(
timelineItems = aTimelineItemList(content),
@@ -92,7 +92,7 @@ class PinnedMessagesListViewTest {
longClick()
}
val event = state.timelineItems.first() as TimelineItem.Event
eventsRecorder.assertSingle(ActionListEvents.ComputeForMessage(event, state.userEventPermissions))
eventsRecorder.assertSingle(ActionListEvent.ComputeForMessage(event, state.userEventPermissions))
}
}