Add tests on GroupedMediaItems.hasEvent

This commit is contained in:
Benoit Marty 2025-01-28 12:47:05 +01:00
parent d44d3b7fce
commit 81d818041e
3 changed files with 38 additions and 1 deletions

View file

@ -48,6 +48,7 @@ val A_THREAD_ID = ThreadId("\$aThreadId")
val A_THREAD_ID_2 = ThreadId("\$aThreadId2")
val AN_EVENT_ID = EventId("\$anEventId")
val AN_EVENT_ID_2 = EventId("\$anEventId2")
val AN_EVENT_ID_3 = EventId("\$anEventId3")
val A_ROOM_ALIAS = RoomAlias("#alias1:domain")
val A_TRANSACTION_ID = TransactionId("aTransactionId")
val A_DEVICE_ID = DeviceId("ILAKNDNASDLK")

View file

@ -9,6 +9,7 @@ package io.element.android.libraries.mediaviewer.impl.gallery.ui
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import io.element.android.libraries.core.preview.loremIpsum
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.UniqueId
import io.element.android.libraries.matrix.api.media.MediaSource
import io.element.android.libraries.mediaviewer.api.anAudioMediaInfo
@ -30,12 +31,13 @@ class MediaItemAudioProvider : PreviewParameterProvider<MediaItem.Audio> {
fun aMediaItemAudio(
id: UniqueId = UniqueId("fileId"),
eventId: EventId? = null,
filename: String = "filename",
caption: String? = null,
): MediaItem.Audio {
return MediaItem.Audio(
id = id,
eventId = null,
eventId = eventId,
mediaInfo = anAudioMediaInfo(
filename = filename,
caption = caption,

View file

@ -0,0 +1,34 @@
/*
* Copyright 2025 New Vector Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.libraries.mediaviewer.impl.gallery
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.test.AN_EVENT_ID
import io.element.android.libraries.matrix.test.AN_EVENT_ID_2
import io.element.android.libraries.matrix.test.AN_EVENT_ID_3
import io.element.android.libraries.mediaviewer.impl.gallery.ui.aMediaItemAudio
import io.element.android.libraries.mediaviewer.impl.gallery.ui.aMediaItemImage
import kotlinx.collections.immutable.persistentListOf
import org.junit.Test
class GroupedMediaItemsTest {
@Test
fun `hasEvent returns the expected value`() {
val sut = GroupedMediaItems(
imageAndVideoItems = persistentListOf(
aMediaItemImage(eventId = AN_EVENT_ID),
),
fileItems = persistentListOf(
aMediaItemAudio(eventId = AN_EVENT_ID_2),
),
)
assertThat(sut.hasEvent(AN_EVENT_ID)).isTrue()
assertThat(sut.hasEvent(AN_EVENT_ID_2)).isTrue()
assertThat(sut.hasEvent(AN_EVENT_ID_3)).isFalse()
}
}