mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-02-24 19:56:00 +00:00
Implement several caching improvements for the Story Viewer.
This commit is contained in:
@@ -6,7 +6,12 @@ import io.reactivex.rxjava3.schedulers.TestScheduler
|
||||
import org.junit.After
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mockito.Mock
|
||||
import org.mockito.MockedStatic
|
||||
import org.mockito.junit.MockitoJUnit
|
||||
import org.mockito.junit.MockitoRule
|
||||
import org.mockito.kotlin.any
|
||||
import org.mockito.kotlin.doReturn
|
||||
import org.mockito.kotlin.mock
|
||||
@@ -14,16 +19,29 @@ import org.mockito.kotlin.never
|
||||
import org.mockito.kotlin.verify
|
||||
import org.mockito.kotlin.whenever
|
||||
import org.thoughtcrime.securesms.recipients.RecipientId
|
||||
import org.thoughtcrime.securesms.stories.Stories
|
||||
import org.thoughtcrime.securesms.stories.StoryViewerArgs
|
||||
|
||||
class StoryViewerViewModelTest {
|
||||
|
||||
@Rule
|
||||
@JvmField
|
||||
val mockitoRule: MockitoRule = MockitoJUnit.rule()
|
||||
|
||||
private val testScheduler = TestScheduler()
|
||||
private val repository: StoryViewerRepository = mock()
|
||||
|
||||
@Mock
|
||||
private lateinit var repository: StoryViewerRepository
|
||||
|
||||
@Mock
|
||||
private lateinit var mockStoriesStatic: MockedStatic<Stories>
|
||||
|
||||
@Before
|
||||
fun setUp() {
|
||||
RxJavaPlugins.setInitComputationSchedulerHandler { testScheduler }
|
||||
RxJavaPlugins.setComputationSchedulerHandler { testScheduler }
|
||||
|
||||
whenever(repository.getFirstStory(any(), any(), any())).doReturn(Single.just(mock()))
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -34,9 +52,6 @@ class StoryViewerViewModelTest {
|
||||
@Test
|
||||
fun `Given a list of recipients, when I initialize, then I expect the list`() {
|
||||
// GIVEN
|
||||
val repoStories: List<RecipientId> = (1L..5L).map(RecipientId::from)
|
||||
whenever(repository.getStories(any(), any())).doReturn(Single.just(repoStories))
|
||||
|
||||
val injectedStories: List<RecipientId> = (6L..10L).map(RecipientId::from)
|
||||
|
||||
// WHEN
|
||||
|
||||
@@ -167,7 +167,8 @@ class StoryViewerPageViewModelTest {
|
||||
RecipientId.from(1),
|
||||
-1L,
|
||||
false,
|
||||
repository
|
||||
repository,
|
||||
mock()
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user