Skip to content

Commit 58a44ac

Browse files
committed
fix test
1 parent e4c1913 commit 58a44ac

File tree

1 file changed

+27
-3
lines changed

1 file changed

+27
-3
lines changed

vector/src/test/java/im/vector/app/features/home/RoomsListViewModelTest.kt

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ package im.vector.app.features.home
1818

1919
import android.widget.ImageView
2020
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
21+
import androidx.lifecycle.LiveData
22+
import androidx.lifecycle.liveData
23+
import androidx.paging.PagedList
2124
import com.airbnb.mvrx.test.MavericksTestRule
2225
import im.vector.app.R
2326
import im.vector.app.core.platform.StateView
@@ -35,6 +38,7 @@ import im.vector.app.test.fakes.FakeStringProvider
3538
import im.vector.app.test.fixtures.RoomSummaryFixture.aRoomSummary
3639
import im.vector.app.test.test
3740
import io.mockk.every
41+
import io.mockk.mockk
3842
import io.mockk.mockkStatic
3943
import kotlinx.coroutines.flow.flowOf
4044
import kotlinx.coroutines.test.runTest
@@ -43,7 +47,12 @@ import org.junit.Rule
4347
import org.junit.Test
4448
import org.matrix.android.sdk.api.query.SpaceFilter
4549
import org.matrix.android.sdk.api.session.getUserOrDefault
50+
import org.matrix.android.sdk.api.session.room.ResultBoundaries
51+
import org.matrix.android.sdk.api.session.room.RoomSortOrder
52+
import org.matrix.android.sdk.api.session.room.RoomSummaryQueryParams
53+
import org.matrix.android.sdk.api.session.room.UpdatableLivePageResult
4654
import org.matrix.android.sdk.api.session.room.model.Membership
55+
import org.matrix.android.sdk.api.session.room.model.RoomSummary
4756
import org.matrix.android.sdk.api.util.Optional
4857
import org.matrix.android.sdk.api.util.toMatrixItem
4958
import org.matrix.android.sdk.flow.FlowSession
@@ -81,16 +90,31 @@ class RoomsListViewModelTest {
8190
val roomC = aRoomSummary("room_c")
8291
val allRooms = listOf(roomA, roomB, roomC)
8392

93+
val mockPagedList = mockk<PagedList<RoomSummary>>().apply {
94+
every { get(any<Int>()) } answers {
95+
allRooms[firstArg()]
96+
}
97+
98+
every { loadedCount } returns allRooms.size
99+
}
100+
84101
every {
85-
fakeFLowSession.liveRoomSummaries(
102+
fakeSession.fakeRoomService.getFilteredPagedRoomSummariesLive(
86103
match {
87104
it.roomCategoryFilter == null &&
88105
it.roomTagQueryFilter == null &&
89106
it.memberships == listOf(Membership.JOIN) &&
90107
it.spaceFilter is SpaceFilter.NoFilter
91-
}, any()
108+
}, any(), any()
92109
)
93-
} returns flowOf(allRooms)
110+
} returns object : UpdatableLivePageResult {
111+
override val livePagedList: LiveData<PagedList<RoomSummary>>
112+
get() = liveData { emit(mockPagedList) }
113+
override val liveBoundaries: LiveData<ResultBoundaries>
114+
get() = liveData { emit(ResultBoundaries(true, true, false)) }
115+
override var queryParams = RoomSummaryQueryParams.Builder().build()
116+
override var sortOrder = RoomSortOrder.ACTIVITY
117+
}
94118

95119
viewModelWith(initialState)
96120
}

0 commit comments

Comments
 (0)