Add tests on DefaultFocusedTimelineMediaGalleryDataSourceFactory

This commit is contained in:
Benoit Marty 2025-01-28 12:42:30 +01:00
parent b04bdbf585
commit d44d3b7fce
2 changed files with 44 additions and 11 deletions

View file

@ -0,0 +1,31 @@
/*
* 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.room.FakeMatrixRoom
import io.element.android.libraries.mediaviewer.impl.gallery.ui.aMediaItemImage
import kotlinx.coroutines.test.runTest
import org.junit.Test
class DefaultFocusedTimelineMediaGalleryDataSourceFactoryTest {
@Test
fun `createFor should create a TimelineMediaGalleryDataSource`() = runTest {
val sut = DefaultFocusedTimelineMediaGalleryDataSourceFactory(
room = FakeMatrixRoom(),
timelineMediaItemsFactory = createTimelineMediaItemsFactory(),
mediaItemsPostProcessor = MediaItemsPostProcessor(),
)
val result = sut.createFor(
eventId = AN_EVENT_ID,
mediaItem = aMediaItemImage(),
)
assertThat(result).isInstanceOf(TimelineMediaGalleryDataSource::class.java)
}
}

View file

@ -261,18 +261,20 @@ class TimelineMediaGalleryDataSourceTest {
return TimelineMediaGalleryDataSource(
room = room,
mediaTimeline = LiveMediaTimeline(room),
timelineMediaItemsFactory = TimelineMediaItemsFactory(
dispatchers = testCoroutineDispatchers(),
virtualItemFactory = VirtualItemFactory(
dateFormatter = FakeDateFormatter(),
),
eventItemFactory = EventItemFactory(
fileSizeFormatter = FakeFileSizeFormatter(),
fileExtensionExtractor = FileExtensionExtractorWithoutValidation(),
dateFormatter = FakeDateFormatter(),
),
),
timelineMediaItemsFactory = createTimelineMediaItemsFactory(),
mediaItemsPostProcessor = MediaItemsPostProcessor(),
)
}
}
fun TestScope.createTimelineMediaItemsFactory() = TimelineMediaItemsFactory(
dispatchers = testCoroutineDispatchers(),
virtualItemFactory = VirtualItemFactory(
dateFormatter = FakeDateFormatter(),
),
eventItemFactory = EventItemFactory(
fileSizeFormatter = FakeFileSizeFormatter(),
fileExtensionExtractor = FileExtensionExtractorWithoutValidation(),
dateFormatter = FakeDateFormatter(),
),
)