В моей модели просмотра у меня есть следующий список
private val screenComponents = mutableListOf(
ScreenComponent1(),
ScreenComponent2()
)
fun getScreenComponents() = screenComponents
fun getScreenComponentsSize() = getScreenComponents().size
, в какой-то момент в список screenComponents
вставляются дополнительные данные.
Я пытаюсь написать для этого модульные тесты чтобы убедиться, что размер правильный, я знаю, что должен смоделировать функцию getScreenComponents()
, но когда я пытаюсь проверить getScreenComponentsSize()
, я всегда получаю ноль
@RunWith(MockitoJUnitRunner::class)
class MyViewModelTest {
private val viewModel: MyViewModel = Mockito.mock(MyViewModel::class.java)
@Test
fun screenComponentsTest() {
when(viewModel.getScreenComponents()).thenReturn(
mutableListOf(
ScreenComponent1(),
ScreenComponent2()
)
)
Truth.assertThat(viewModel.getScreenComponentsSize()).isEqualTo(2) //Expected :2, Actual :0
}
}
Я не уверен, что я ' м отсутствует, так как getScreenComponentsSize()
теперь использует функцию, которая является поддельной, я бы понял, что результатом должен быть результат того, что я высмеял. Или как мне пройти успешный тест?