Skip to content
Snippets Groups Projects
Commit c3652aff authored by Taras's avatar Taras
Browse files

Create test method for media caption edit

parent af1c552d
No related branches found
No related tags found
No related merge requests found
...@@ -13,10 +13,20 @@ import org.futo.circles.core.extensions.toVideoContentAttachmentData ...@@ -13,10 +13,20 @@ import org.futo.circles.core.extensions.toVideoContentAttachmentData
import org.futo.circles.core.model.CreatePollContent import org.futo.circles.core.model.CreatePollContent
import org.futo.circles.core.model.MediaType import org.futo.circles.core.model.MediaType
import org.futo.circles.core.provider.MatrixSessionProvider import org.futo.circles.core.provider.MatrixSessionProvider
import org.matrix.android.sdk.api.session.events.model.Event
import org.matrix.android.sdk.api.session.events.model.EventType
import org.matrix.android.sdk.api.session.events.model.LocalEcho
import org.matrix.android.sdk.api.session.events.model.RelationType
import org.matrix.android.sdk.api.session.events.model.UnsignedData
import org.matrix.android.sdk.api.session.events.model.toContent
import org.matrix.android.sdk.api.session.events.model.toModel
import org.matrix.android.sdk.api.session.getRoom import org.matrix.android.sdk.api.session.getRoom
import org.matrix.android.sdk.api.session.room.Room import org.matrix.android.sdk.api.session.room.Room
import org.matrix.android.sdk.api.session.room.getTimelineEvent import org.matrix.android.sdk.api.session.room.getTimelineEvent
import org.matrix.android.sdk.api.session.room.model.message.MessageImageContent
import org.matrix.android.sdk.api.session.room.model.message.MessageTextContent
import org.matrix.android.sdk.api.session.room.model.message.MessageType import org.matrix.android.sdk.api.session.room.model.message.MessageType
import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultContent
import org.matrix.android.sdk.api.util.Cancelable import org.matrix.android.sdk.api.util.Cancelable
import org.matrix.android.sdk.api.util.CancelableBag import org.matrix.android.sdk.api.util.CancelableBag
import org.matrix.android.sdk.internal.util.CancelableWork import org.matrix.android.sdk.internal.util.CancelableWork
...@@ -54,6 +64,18 @@ class SendMessageDataSource @Inject constructor(@ApplicationContext private val ...@@ -54,6 +64,18 @@ class SendMessageDataSource @Inject constructor(@ApplicationContext private val
.editTextMessage(event, MessageType.MSGTYPE_TEXT, message, null, false) .editTextMessage(event, MessageType.MSGTYPE_TEXT, message, null, false)
} }
fun editMediaCaption(eventId: String, roomId: String, message: String) {
val roomForMessage = session?.getRoom(roomId) ?: return
val event = roomForMessage.getTimelineEvent(eventId)?.root ?: return
val additionalContent = mutableMapOf<String, Any>().apply {
this[MediaCaptionFieldKey] = "edited caption"
}
val editedEventContent = event.getClearContent().toModel<MessageImageContent>()?.copy(
relatesTo = RelationDefaultContent(RelationType.REPLACE, eventId),
).toContent().plus(additionalContent)
roomForMessage.sendService().sendEvent(EventType.MESSAGE, editedEventContent)
}
suspend fun sendMedia( suspend fun sendMedia(
roomId: String, roomId: String,
uri: Uri, uri: Uri,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment