Я получаю следующее, когда пытаюсь издеваться и проверять действие, вызывающее функцию приостановки
Ошибка:
Аргументы разные! Требуется: userManager.getAccountInfo ((onCreate_callsGetAccountInformation $ 1) kotlinx.coroutines.experimental.CoroutineScope. () -> kotlin.Unit); -> at com.pharmacy.AccountActivityTests $ onCreate_callsGetAccountInformation $ 1.doResume (AccountActivityTests.kt: 117) Фактический вызов имеет разные аргументы: userManager.getAccountInfo (() kotlinx.coroutines.experimental.CoroutineScopelin) - >.Unit в com.pharmacy.AccountActivity $ loadAccountInfoAsync $ 1 $ 1.doResume (AccountActivity.kt: 199)
Код:
У меня есть мой модульный тестовый пример, украшенный runBlocking следующим образом:
@Test
fun onCreate_callsGetAccountInformation() = runBlocking<Unit>
{ whenever(userManager.getAccountInfo()).thenReturn(AccountInformation())
subject = Robolectric.setupActivity(AccountActivity::class.java)
verify(userManager).getAccountInfo()
}
здесь -> usermanager.getAccountInfo () - функция приостановки.