From fa6d13426e3ef0cd83800ca2558e666c38529e37 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 24 Oct 2023 14:20:26 +0200 Subject: [PATCH] Test coverage: Add missing preview for MessagesView. --- .../messages/impl/MessagesStateProvider.kt | 16 ++++++++++++++++ .../VoiceMessageComposerStateProvider.kt | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt index ca701d23f5..9d12207362 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesStateProvider.kt @@ -18,6 +18,7 @@ package io.element.android.features.messages.impl import androidx.compose.ui.tooling.preview.PreviewParameterProvider import io.element.android.features.messages.impl.actionlist.anActionListState +import io.element.android.features.messages.impl.messagecomposer.AttachmentsState import io.element.android.features.messages.impl.messagecomposer.aMessageComposerState import io.element.android.features.messages.impl.timeline.aTimelineItemList import io.element.android.features.messages.impl.timeline.aTimelineState @@ -32,6 +33,7 @@ import io.element.android.libraries.designsystem.components.avatar.AvatarSize import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.textcomposer.model.MessageComposerMode import io.element.android.wysiwyg.compose.RichTextEditorState +import kotlinx.collections.immutable.persistentListOf import kotlinx.collections.immutable.persistentSetOf open class MessagesStateProvider : PreviewParameterProvider { @@ -47,6 +49,20 @@ open class MessagesStateProvider : PreviewParameterProvider { roomAvatar = Async.Uninitialized, ), aMessagesState().copy(composerState = aMessageComposerState().copy(showTextFormatting = true)), + aMessagesState().copy( + enableVoiceMessages = true, + voiceMessageComposerState = aVoiceMessageComposerState(showPermissionRationaleDialog = true), + ), + aMessagesState().copy( + composerState = aMessageComposerState().copy( + attachmentsState = AttachmentsState.Sending.Processing(persistentListOf()) + ), + ), + aMessagesState().copy( + composerState = aMessageComposerState().copy( + attachmentsState = AttachmentsState.Sending.Uploading(0.33f) + ), + ), ) } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerStateProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerStateProvider.kt index 9e361b964d..01414a6dda 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerStateProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerStateProvider.kt @@ -29,8 +29,9 @@ internal open class VoiceMessageComposerStateProvider : PreviewParameterProvider internal fun aVoiceMessageComposerState( voiceMessageState: VoiceMessageState = VoiceMessageState.Idle, + showPermissionRationaleDialog: Boolean = false, ) = VoiceMessageComposerState( voiceMessageState = voiceMessageState, - showPermissionRationaleDialog = false, + showPermissionRationaleDialog = showPermissionRationaleDialog, eventSink = {}, )