Do some renaming now that user can select multiple answers per poll

This commit is contained in:
Benoit Marty
2026-08-31 15:45:14 +02:00
parent 0ad3ab1d9d
commit 012c5a1f81
12 changed files with 35 additions and 35 deletions
@@ -52,7 +52,7 @@ sealed interface TimelineEvent {
*/
sealed interface TimelineItemPollEvent : TimelineItemEvent
data class SelectPollAnswer(
data class SendPollResponse(
val pollStartId: EventId,
val answerIds: List<String>
) : TimelineItemPollEvent
@@ -201,12 +201,12 @@ class TimelinePresenter(
newEventState.value = NewEventState.None
}
}
is TimelineEvent.SelectPollAnswer -> sessionCoroutineScope.launch {
is TimelineEvent.SendPollResponse -> sessionCoroutineScope.launch {
timelineController.invokeOnCurrentTimeline {
sendPollResponseAction.execute(
timeline = this,
pollStartId = event.pollStartId,
answerIds = event.answerIds
answerIds = event.answerIds,
).onFailure { error ->
Timber.tag(tag).e(error, "Failed to send poll response")
}
@@ -26,8 +26,8 @@ fun TimelineItemPollView(
eventSink: (TimelineEvent.TimelineItemPollEvent) -> Unit,
modifier: Modifier = Modifier,
) {
fun onSelectAnswer(pollStartId: EventId, answerIds: List<String>) {
eventSink(TimelineEvent.SelectPollAnswer(pollStartId, answerIds))
fun onSendPollResponse(pollStartId: EventId, answerIds: List<String>) {
eventSink(TimelineEvent.SendPollResponse(pollStartId, answerIds))
}
fun onEndPoll(pollStartId: EventId) {
@@ -48,7 +48,7 @@ fun TimelineItemPollView(
isPollEnded = content.isEnded,
isPollEditable = content.isEditable,
isMine = content.isMine,
onSelectAnswer = ::onSelectAnswer,
onSendPollResponse = ::onSendPollResponse,
onEditPoll = ::onEditPoll,
onEndPoll = ::onEndPoll,
modifier = modifier,
@@ -951,14 +951,14 @@ class TimelinePresenterTest {
}
@Test
fun `present - PollAnswerSelected event`() = runTest {
fun `present - SendPollResponse event`() = runTest {
val sendPollResponseAction = FakeSendPollResponseAction()
val presenter = createTimelinePresenter(
sendPollResponseAction = sendPollResponseAction,
)
presenter.test {
val initialState = awaitFirstItem()
initialState.eventSink.invoke(TimelineEvent.SelectPollAnswer(AN_EVENT_ID, listOf("anAnswerId")))
initialState.eventSink.invoke(TimelineEvent.SendPollResponse(AN_EVENT_ID, listOf("anAnswerId")))
}
delay(1)
sendPollResponseAction.verifyExecutionCount(1)
@@ -50,7 +50,7 @@ class TimelineItemPollViewTest : RobolectricTest() {
matcher = hasText(answer.text),
useUnmergedTree = true,
).performClick()
eventsRecorder.assertSingle(TimelineEvent.SelectPollAnswer(content.eventId!!, listOf(answer.id)))
eventsRecorder.assertSingle(TimelineEvent.SendPollResponse(content.eventId!!, listOf(answer.id)))
}
@Test